You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by mgenov <mg...@gmail.com> on 2007/10/19 10:33:21 UTC

ServiceMix and base64 encoding

Hello guys, 
I'm having problem with service mix and soap message with xml message. The
xml message has an 
xml tag which holds an base64 encoded another xml message. 

That is a sample xml: 
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
	<SOAP-ENV:Body>
                <Message>
                      <tag1>
                        
PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGL.........................
                      </tag1>
                </MessagE>
	</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

When web service sends this message service mix throws an exception such as
this one: 
com.ctc.wstx.exc.WstxParsingException: Illegal processing instruction target
("xml"); xml (case insensitive) is reserved by the specs.
 at [row,col {unknown-source}]: [1,13]
	at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java:458)
	at
com.ctc.wstx.sr.BasicStreamReader.readPIPrimary(BasicStreamReader.java:3780)
	at
com.ctc.wstx.sr.BasicStreamReader.nextFromTree(BasicStreamReader.java:2700)
	at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1004)
	at
org.apache.servicemix.jbi.jaxp.XMLStreamHelper.copy(XMLStreamHelper.java:78)
	at
org.apache.servicemix.soap.marshalers.SoapWriter.writeContents(SoapWriter.java:206)
	at
org.apache.servicemix.soap.marshalers.SoapWriter.writeSoapEnvelope(SoapWriter.java:198)
	at
org.apache.servicemix.soap.marshalers.SoapWriter.writeSimpleMessage(SoapWriter.java:105)
	at
org.apache.servicemix.soap.marshalers.SoapWriter.write(SoapWriter.java:84)
	at
org.apache.servicemix.http.processors.ConsumerProcessor.process(ConsumerProcessor.java:244)
	at
org.apache.servicemix.http.HttpBridgeServlet.doPost(HttpBridgeServlet.java:71)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:445)
	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:356)
	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:627)
	at
org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:149)
	at
org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:123)
	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:141)
	at org.mortbay.jetty.Server.handle(Server.java:269)
	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:430)
	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:333)
	at
org.mortbay.jetty.nio.HttpChannelEndPoint.run(HttpChannelEndPoint.java:270)
	at
org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)


The problem seems to be in the soap module but I'm not so sure about that.
This happens because the encoded data contains <?xml version='1.0'
encoding='UTF-8'?> and also there is next endpoint.I don't know why
ServiceMix decodes this encoded data.

Any idea where is the problem ? 
-- 
View this message in context: http://www.nabble.com/ServiceMix-and-base64-encoding-tf4651743s12049.html#a13290314
Sent from the ServiceMix - User mailing list archive at Nabble.com.