I'm a bit new to this, but I'm having a problem that must have a straightforward solution I don't know about.
I'm using the HTTP connector to call out to a webservice, and the webservice returns valid XML. I can't then automatically return the XML unmodified or I get
No serializer found for class org.glassfish.grizzly.utils.BufferInputStream and no properties discovered to create BeanSerializer
So I guess that's because the response is streamed and I need to do Byte Array to [whatever] first. However, when I do this, quotes and new line characters get escaped like this
"<?xml version=\"1.0\"?>\r\n<root xmlns=\"http://xmlns.whatever.com"><PERSON type=\"staff\"><ID><![CDATA[00100762]]></ID></PERSON></root>"
If I try to use the transformer to turn it into a plain string, xml, json, or whatever, I end up with all these escaped characters. If I transform into a string, I will get the entire payload inside double quotes as shown above. If I transform that into XML, I end up with a single element containing the escaped XML string.
I've written a little node.js app that also consumes this webservice and it is able to parse the response without any problems, so what's the deal with Mule? Calling out to a webservice and getting a response I can parse should be the most basic thing and I can't make it work.
Well, I don't know why this was happening, but I updated to Mule ESB 4.1 and I'm not having the problem anymore.