--- resteasy/resteasy-jaxrs/src/main/java/org/jboss/resteasy/plugins/providers/StringTextStar.java.orig 2014-01-15 20:36:30.000000000 +0800 +++ resteasy/resteasy-jaxrs/src/main/java/org/jboss/resteasy/plugins/providers/StringTextStar.java 2014-01-10 15:39:44.000000000 +0800 @@ -56,6 +56,9 @@ MultivaluedMap httpHeaders, OutputStream entityStream) throws IOException { - entityStream.write(o.getBytes()); + String charset = mediaType.getParameters().get("charset"); + if (charset == null) entityStream.write(o.getBytes()); + else entityStream.write(o.getBytes(charset)); + } } \ No newline at end of file --- resteasy/resteasy-jaxrs/src/main/java/org/jboss/resteasy/plugins/providers/DefaultTextPlain.java.orig 2014-01-15 20:36:30.000000000 +0800 +++ resteasy/resteasy-jaxrs/src/main/java/org/jboss/resteasy/plugins/providers/DefaultTextPlain.java 2014-01-10 15:39:44.000000000 +0800 @@ -51,6 +51,8 @@ public void writeTo(Object o, Class type, Type genericType, Annotation[] annotations, MediaType mediaType, MultivaluedMap httpHeaders, OutputStream entityStream) throws IOException, WebApplicationException { - entityStream.write(o.toString().getBytes()); + String charset = mediaType.getParameters().get("charset"); + if (charset == null) entityStream.write(o.toString().getBytes()); + else entityStream.write(o.toString().getBytes(charset)); } }