You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Lorenzo Bolzani <l....@gmail.com> on 2011/08/04 11:30:13 UTC
JBIConduitOutputStream does not copy attachments
Hi,
I have a problem sending an mtom soap request.
>From a remote client (inside eclipse) a invoke a webservice A deployed on
servicemix. This webservice invoke another one, B, also deployed on
servicemix, using a cxf proxy
<property name="documentManagementPort">
<cxfse:proxy
service="registry:DocumentManagementService" mtomEnabled="true"
type="it.klever.kdv.registry.ws.DocumentManagementPort"
useJBIWrapper="false"/>
</property>
what I see is that "plain" invocations from A to B work fine, while I get a
NPE inside A when a try to retrieve the attachments from the response of an
mtom request (NPE is at
LazyDataSource.getInputStream(LazyDataSource.java:67)).
Debugging I found that attachments are not present inside the response
message, but the "attachment id" is.
I traced this back to the fact that the class JBIConduitOutputStream does
not copy the attachments inside the commitOutputMessage method, like the
class JBIDestinationOutputStream does.
This class is created from the JBIConduit that is created from the
ClientImpl class.
Is this the expected behaviour? If so, what can I do to solve my problem?
Maybe it is just a proxy configuration error.
Thanks, bye
Lorenzo
Re: JBIConduitOutputStream does not copy attachments
Posted by Lorenzo Bolzani <l....@gmail.com>.
Sorry, I forgot: Servicemix 3.3.2, cxf 2.2.6.
2011/8/4 Lorenzo Bolzani <l....@gmail.com>
>
> Hi,
> I have a problem sending an mtom soap request.
>
> From a remote client (inside eclipse) a invoke a webservice A deployed on
> servicemix. This webservice invoke another one, B, also deployed on
> servicemix, using a cxf proxy
>
> <property name="documentManagementPort">
> <cxfse:proxy
> service="registry:DocumentManagementService" mtomEnabled="true"
>
> type="it.klever.kdv.registry.ws.DocumentManagementPort"
> useJBIWrapper="false"/>
> </property>
>
> what I see is that "plain" invocations from A to B work fine, while I get a
> NPE inside A when a try to retrieve the attachments from the response of an
> mtom request (NPE is at
> LazyDataSource.getInputStream(LazyDataSource.java:67)).
> Debugging I found that attachments are not present inside the response
> message, but the "attachment id" is.
>
> I traced this back to the fact that the class JBIConduitOutputStream does
> not copy the attachments inside the commitOutputMessage method, like the
> class JBIDestinationOutputStream does.
>
> This class is created from the JBIConduit that is created from the
> ClientImpl class.
>
> Is this the expected behaviour? If so, what can I do to solve my problem?
> Maybe it is just a proxy configuration error.
>
>
> Thanks, bye
>
> Lorenzo
>