CAMEL-6895 Supported to set the camel-xmljson Encoding
Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/86fe4886 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/86fe4886 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/86fe4886 Branch: refs/heads/camel-2.11.x Commit: 86fe48860b3eea709282afb39850fb7bdf00a783 Parents: 321543a Author: Willem Jiang <ningji...@apache.org> Authored: Fri Oct 25 20:44:54 2013 +0800 Committer: Willem Jiang <willem.ji...@gmail.com> Committed: Fri Oct 25 21:07:14 2013 +0800 ---------------------------------------------------------------------- .../camel/dataformat/xmljson/XmlJsonDataFormat.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/86fe4886/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/XmlJsonDataFormat.java ---------------------------------------------------------------------- diff --git a/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/XmlJsonDataFormat.java b/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/XmlJsonDataFormat.java index f68c60b..99a91d7 100644 --- a/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/XmlJsonDataFormat.java +++ b/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/XmlJsonDataFormat.java @@ -151,8 +151,17 @@ public class XmlJsonDataFormat extends ServiceSupport implements DataFormat { } else { json = serializer.read((String) xml); } - - OutputStreamWriter osw = new OutputStreamWriter(stream, IOHelper.getCharsetName(exchange)); + // don't return the default setting here + String encoding = IOHelper.getCharsetName(exchange, false); + if (encoding == null) { + encoding = getEncoding(); + } + OutputStreamWriter osw = null; + if (encoding != null) { + osw = new OutputStreamWriter(stream, encoding); + } else { + osw = new OutputStreamWriter(stream); + } json.write(osw); osw.flush();