[
https://issues.apache.org/activemq/browse/SM-1602?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=46087#action_46087
]
Ron Gavlin commented on SM-1602:
--------------------------------
One other point.
Let's say I have two different server implementations of a request/response
service that both use the jms transport and listen on the same queue. One of
the server implementations does not currently support MTOM. The other server
implementation listening on the same queue is configured with MTOM support.
I would expect to be able to successfully interact with both server
implementations by configuring my smx-cxf-bc provider with MTOMEnabled=false.
Shouldn't the MTOMEnabled flag on the smx-cxf-bc provider control how it sends
attachments in the request to the server and the MTOMEnabled flag on the
smx-cxf-bc consumer control how it sends attachments to the client in the
response? Both the provider and consumer should always gracefully "receive"
mtom or non-mtom attachments. The MTOMEnabled flag simply controls how they
"send" the attachments. Is my understanding correct?
Ron
> cxf-bc provider w/mtomEnabled=false talking to cxf-bc consumer
> w/mtomEnabled=true over jms throws Error reading XMLStreamReader
> -------------------------------------------------------------------------------------------------------------------------------
>
> Key: SM-1602
> URL: https://issues.apache.org/activemq/browse/SM-1602
> Project: ServiceMix
> Issue Type: Bug
> Components: servicemix-cxf-bc
> Affects Versions: 3.2.2
> Environment: Latest version from 3.2.x branch
> Reporter: Ron Gavlin
> Attachments: client.html, wsdl-first-cxf-sa-3.3.1.3-fuse.jar
>
>
> I have a cxf-se service that returns an attachment. It is configured with
> mtomEnabled=true. It is fronted by a cxf-bc consumer configured to use the
> jms transport. The cxf-bc is also configured with mtomEnabled=true.
> I have a cxf-bc provider configured to communicate with the above cxf-bc
> consumer over jms. However, it is configured with mtomEnabled=false.
> When I send an in-out ME to the cxf-bc provider, the following error occurs:
> INFO: Interceptor has thrown exception, unwinding now
> org.apache.cxf.binding.soap.SoapFault: Error reading XMLStreamReader.
> at
> org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:183)
> at
> org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:56)
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at
> org.apache.servicemix.cxfbc.CxfBcProviderMessageObserver.onMessage(CxfBcProviderMessageObserver.java:140)
> at
> org.apache.cxf.transport.jms.JMSConduit.sendExchange(JMSConduit.java:172)
> at
> org.apache.cxf.transport.jms.JMSOutputStream.doClose(JMSOutputStream.java:49)
> at
> org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:167)
> at
> org.apache.servicemix.cxfbc.CxfBcProvider.process(CxfBcProvider.java:213)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:540)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:492)
> at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:620)
> at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:167)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
> at java.lang.Thread.run(Thread.java:595)
> Caused by: com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character
> '-' (code 45) in prolog; expected '<'
> at [row,col {unknown-source}]: [2,1]
> at
> com.ctc.wstx.sr.StreamScanner.throwUnexpectedChar(StreamScanner.java:623)
> at
> com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:2047)
> at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1069)
> at
> com.ctc.wstx.sr.BasicStreamReader.nextTag(BasicStreamReader.java:1095)
> at
> org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:85)
> ... 17 more
> In order to reproduce the problem
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.