Thanks Freeman, I was using version 3.3 and just downloaded 3.3.1 which I
discovered is using the new 2009.01 components - I should have known to try
this first! The 2009.01 CXF SE supports the 'useSOAPEnvelope=false'
parameter. Thanks for the help and patience. :)
The problem now is that when I set both useJBIWrapper and useSOAPEnvelope
parameters on the CXF SE Endpoint the CXF SE's DocLiteralInInterceptor
throws an exception stating: "Message part
{http://www.mycompany.com/domain}TransferDocument was not recognized. (Does
it exist in service WSDL?)"
This is the route:
InOnly: File BC (has to be a bare message:
<dom:TransferDocument><dom:TransferHeader/></dom:TransferDocument>)
=>
InOnly: EIP SE (Pipeline route su - sets 'srv:save' operation on first
exchange target then 'wsn:notify' on second)
=>
In/Out: CXF SE: DocLiteralInInterceptor throws exception stating: "Message
part {http://www.mycompany.com/domain}TransferDocument was not recognized.
(Does it exist in service WSDL?)"
=>
InOnly: WSN2005 SE (haven't got here yet)
Is it possible that the CXF SE is generating Wrapped parameter style service
and not a Bare parameter style service and expecting this to have a <save>
element? If so, how can I get this to generate the Bare style? I noticed in
the CXF SE Component class the following configuration files:
"META-INF/cxf/cxf.xml",
"META-INF/cxf/cxf-extension-soap.xml",
"META-INF/cxf/transport/jbi/cxf-transport-jbi.xml",
"META-INF/cxf/binding/jbi/cxf-binding-jbi.xml"
Will these help here and if so, where can I get information on them? If not,
are there any other options?
Thanks again!
Respectfully,
Brian
Brian Taylor wrote:
>
> Does CXF SE always generate Wrapped services (e.g. <save> wrappers)? Can I
> get it to generate Bare services (no parameter wrapping)?
>
>
> Freeman Fang wrote:
>>
>> Hi,
>>
>> My comment inline
>> On 2009-8-13, at 上午2:48, Brian Taylor wrote:
>>
>>>
>>> Hello,
>>>
>>> I really appreciate any help on this.
>>>
>>> We're using a File BC SU [1] to pick up an XML message [2] (of which
>>> I added
>>> a JBI message wrapper manually so the CXF SE wouldn't gripe - I've
>>> also used
>>> a SOAP wrapper with the same end result), send the message to an EIP
>>> SE
>>> pipeline route SU [3], which sends it first to a CXF SE SU [4] and
>>> then onto
>>> a WSN-2005 SE SU (not important yet). The Java class for the CXF SE
>>> SU pojo
>>> is [5]. The resultant WSDL upon deployment is [6]. The logged [7]
>>> error that
>>> we get is a NullPointerException in the Java class [5] at:
>>> xmlDoc.getTransferHeader(). It appears the CXF SE is calling the
>>> 'save'
>>> method with a 'null' argument. I don't see any marshalling errors so
>>> I'm
>>> really puzzled at what the problem is.
>>>
>>> Also, is there a way to get the CXF SE Endpoint to set not use the
>>> JBI or
>>> SOAP wrappers? I've tried to set it in the xbean and it will accept
>>> the
>>> useJBIWrapper="false", but when I also add useSOAPEnvelope="false"
>>> it says
>>> that the useSOAPEnvelope is not a property of the CxfSeEndpoint
>>> (even though
>>> the code proves otherwise).
>> Set both seJBIWrapper="false" and useSOAPEnvelope="false" to get what
>> you want
>> You see the exception because you are not use the version including
>> the useSOAPEnvelope attribute.
>> What's the smx version you are using?
>> You can try with FUSE ESB (which is based on apache servicemix but get
>> released more frequently).
>> FUSE ESB 3.3.x[1]match smx 3.2.x and FUSE ESB 3.4.x[2] match smx 3.3.x
>> [1]http://repo.open.iona.com/maven2/org/apache/servicemix/apache-servicemix/3.3.1.20-fuse/
>> [2]http://repo.open.iona.com/maven2/org/apache/servicemix/apache-servicemix/3.4.0.4-fuse/
>>>
>>> Thanks again for any help, this is really stumping me.
>>>
>>> Brian
>>>
>>> [1] File BC SU
>>> <file:poller
>>> service="stSvc:PipelineRoutingServiceFile"
>>> endpoint="SaveTransferDocumentRouteFile"
>>> targetService="stSvc:PipelineRoutingService"
>>> targetEndpoint="SaveTransferDocumentRoute"
>>> file="c:/FilePollingService/TransferDocumentFileDrop"
>>> archive="c:/FilePollingService/TransferDocumentFileDropArchive"
>>> delay="5000"
>>> period="10000"
>>> autoCreateDirectory="true"
>>> deleteFile="true"/>
>>>
>>> [2] Message
>>> <jbi:message
>>> xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper"
>>> xmlns:srv="http://domain.services.mycompany.com/"
>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>> name="save"
>>> type="srv:saveRequest"
>>> version="1.0">
>>> <jbi:part>
>>> <dom:TransferDocument
>>> xmlns:dom="http://www.mycompany.com/domain">
>>> <dom:TransferHeader description="JBI Wrapped with routing">
>>> <dom:Organization id="123456"/>
>>> </dom:TransferHeader>
>>> </dom:TransferDocument>
>>> </jbi:part>
>>> </jbi:message>
>> This message is invalid for cxf se based on the wsdl model used in cxf
>> se, if you want to call save method, it should be like
>>
>> <jbi:message
>> xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper"
>> xmlns:srv="http://domain.services.mycompany.com/"
>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> name="save"
>> type="srv:saveRequest"
>> version="1.0">
>> <jbi:part>
>> <dom:save>
>> <dom:TransferDocument
>> xmlns:dom="http://www.mycompany.com/domain">
>> <dom:TransferHeader description="JBI Wrapped with routing">
>> <dom:Organization id="123456"/>
>> </dom:TransferHeader>
>> </dom:TransferDocument>
>> </dom:save>
>> </jbi:part>
>> </jbi:message>
>>
>> You miss save element. If you are not sure what's the jbi message
>> should be, one solution is you just use a simple flow like
>> external client==>cxf-bc===> cxf-se, and turn on the debug log then
>> you can see the correct jbi message which is changed from the incoming
>> soap message.
>>
>> Freeman
>>
>>>
>>> [3] EIP Pipeline Route SU
>>> <eip:pipeline
>>> service="stSvc:PipelineRoutingService"
>>> endpoint="SaveTransferDocumentRoute">
>>> <eip:transformer>
>>> <eip:exchange-target
>>>
>>> service="stSvc:TransferDocumentDataAccessImplService"
>>> endpoint="TransferDocumentDataAccessImplPort"
>>> operation="stSvc:save"/>
>>> </eip:transformer>
>>> <eip:target>
>>> <eip:exchange-target
>>> service="wsn:NotificationBroker"
>>> endpoint="Broker"
>>> operation="wsn:Notify"/>
>>> </eip:target>
>>> </eip:pipeline>
>>>
>>> [4] CXF SE SU
>>> <cxfse:endpoint>
>>> <cxfse:pojo>
>>> <bean
>>> class="com.mycompany.services.domain.TransferDocumentDataAccessImpl"/>
>>> </cxfse:pojo>
>>> </cxfse:endpoint>
>>>
>>> [5] TransferDocumentDataAccessImplService (save method)
>>> public TransferDocument save(TransferDocument xmlDoc) throws
>>> ImproperArgumentWebFault {
>>> TransferHeader xmlHdr = xmlDoc.getTransferHeader();
>>> if(xmlHdr==null)
>>> throw new
>>> ImproperArgumentWebFault
>>> ("TransferDocumentDataAccess.save():TransferDocument="+xmlDoc);
>>>
>>> [6] Generated WSDL
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <wsdl:definitions
>>> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>>> xmlns:ns1="http://cxf.apache.org/transports/jbi"
>>> xmlns:tns="http://domain.services.mycompany.com/"
>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>> name="TransferDocumentDataAccessImplService"
>>> targetNamespace="http://domain.services.mycompany.com/">
>>> <wsdl:types>
>>> <xs:schema
>>> xmlns:xs="http://www.w3.org/2001/XMLSchema"
>>> xmlns:ns1="http://www.mycompany.com/domain"
>>> attributeFormDefault="unqualified"
>>> elementFormDefault="unqualified"
>>> targetNamespace="http://domain.services.mycompany.com/"
>>> xmlns:tns="http://domain.services.mycompany.com/">
>>> <xs:import namespace="http://www.mycompany.com/domain"/>
>>> <xs:element name="load" type="tns:load"/>
>>> <xs:element name="loadResponse" type="tns:loadResponse"/>
>>> <xs:element name="save" type="tns:save"/>
>>> <xs:element name="saveResponse" type="tns:saveResponse"/>
>>> <xs:complexType name="load">
>>> <xs:sequence>
>>> <xs:element minOccurs="0" name="arg0" type="ns1:TransferDocument"/>
>>> </xs:sequence>
>>> </xs:complexType>
>>> <xs:complexType name="loadResponse">
>>> <xs:sequence>
>>> <xs:element minOccurs="0" name="return" type="ns1:TransferDocument"/>
>>> </xs:sequence>
>>> </xs:complexType>
>>> <xs:complexType name="save">
>>> <xs:sequence>
>>> <xs:element minOccurs="0" name="arg0" type="ns1:TransferDocument"/>
>>> </xs:sequence>
>>> </xs:complexType>
>>> <xs:complexType name="saveResponse">
>>> <xs:sequence>
>>> <xs:element minOccurs="0" name="return" type="ns1:TransferDocument"/>
>>> </xs:sequence>
>>> </xs:complexType>
>>> <xs:element name="ImproperArgumentWebFault"
>>> type="tns:ImproperArgumentWebFault"/>
>>> <xs:complexType name="ImproperArgumentWebFault">
>>> <xs:sequence/>
>>> </xs:complexType>
>>> <xs:element name="DataAccessRetryWebFault"
>>> type="tns:DataAccessRetryWebFault"/>
>>> <xs:complexType name="DataAccessRetryWebFault">
>>> <xs:sequence/>
>>> </xs:complexType>
>>> <xs:element name="DataAccessNotFoundWebFault"
>>> type="tns:DataAccessNotFoundWebFault"/>
>>> <xs:complexType name="DataAccessNotFoundWebFault">
>>> <xs:sequence/>
>>> </xs:complexType>
>>> <xs:element name="DataAccessConstraintWebFault"
>>> type="tns:DataAccessConstraintWebFault"/>
>>> <xs:complexType name="DataAccessConstraintWebFault">
>>> <xs:sequence/>
>>> </xs:complexType>
>>> <xs:element name="DataAccessDuplicateWebFault"
>>> type="tns:DataAccessDuplicateWebFault"/>
>>> <xs:complexType name="DataAccessDuplicateWebFault">
>>> <xs:sequence/>
>>> </xs:complexType>
>>> </xs:schema>
>>> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
>>> xmlns:tns="http://www.mycompany.com/domain"
>>> attributeFormDefault="unqualified" elementFormDefault="unqualified"
>>> targetNamespace="http://www.mycompany.com/domain">
>>> <xs:element name="TransferDocument" nillable="true"
>>> type="tns:TransferDocument"/>
>>> <xs:element name="TransferHeader" nillable="true"
>>> type="tns:TransferHeader"/>
>>> <xs:complexType name="TransferDocument">
>>> <xs:sequence>
>>> <xs:element minOccurs="0" name="TransferHeader"
>>> type="tns:TransferHeader"/>
>>> <xs:element maxOccurs="unbounded" minOccurs="0" name="TransferDetail"
>>> type="tns:TransferDetail"/>
>>> </xs:sequence>
>>> </xs:complexType>
>>> <xs:complexType name="TransferHeader">
>>> <xs:sequence>
>>> <xs:element minOccurs="0" name="Organization"
>>> type="tns:Organization"/>
>>> </xs:sequence>
>>> <xs:attribute name="transferId" type="xs:int"/>
>>> </xs:complexType>
>>> <xs:complexType name="Organization">
>>> <xs:sequence>
>>> </xs:sequence>
>>> <xs:attribute name="id" type="xs:int"/>
>>> </xs:complexType>
>>> <xs:complexType name="TransferDetail">
>>> <xs:sequence>
>>> </xs:sequence>
>>> <xs:attribute name="transferDetailId" type="xs:int"/>
>>> <xs:attribute name="transferId" type="xs:int"/>
>>> </xs:complexType>
>>> </xs:schema>
>>> </wsdl:types>
>>> <wsdl:message name="DataAccessConstraintWebFault">
>>> <wsdl:part element="tns:DataAccessConstraintWebFault"
>>> name="DataAccessConstraintWebFault">
>>> </wsdl:part>
>>> </wsdl:message>
>>> <wsdl:message name="ImproperArgumentWebFault">
>>> <wsdl:part element="tns:ImproperArgumentWebFault"
>>> name="ImproperArgumentWebFault">
>>> </wsdl:part>
>>> </wsdl:message>
>>> <wsdl:message name="load">
>>> <wsdl:part element="tns:load" name="parameters">
>>> </wsdl:part>
>>> </wsdl:message>
>>> <wsdl:message name="DataAccessDuplicateWebFault">
>>> <wsdl:part element="tns:DataAccessDuplicateWebFault"
>>> name="DataAccessDuplicateWebFault">
>>> </wsdl:part>
>>> </wsdl:message>
>>> <wsdl:message name="DataAccessRetryWebFault">
>>> <wsdl:part element="tns:DataAccessRetryWebFault"
>>> name="DataAccessRetryWebFault">
>>> </wsdl:part>
>>> </wsdl:message>
>>> <wsdl:message name="DataAccessNotFoundWebFault">
>>> <wsdl:part element="tns:DataAccessNotFoundWebFault"
>>> name="DataAccessNotFoundWebFault">
>>> </wsdl:part>
>>> </wsdl:message>
>>> <wsdl:message name="loadResponse">
>>> <wsdl:part element="tns:loadResponse" name="parameters">
>>> </wsdl:part>
>>> </wsdl:message>
>>> <wsdl:message name="saveResponse">
>>> <wsdl:part element="tns:saveResponse" name="parameters">
>>> </wsdl:part>
>>> </wsdl:message>
>>> <wsdl:message name="save">
>>> <wsdl:part element="tns:save" name="parameters">
>>> </wsdl:part>
>>> </wsdl:message>
>>> <wsdl:portType name="TransferDocumentDataAccess">
>>> <wsdl:operation name="load">
>>> <wsdl:input message="tns:load" name="load">
>>> </wsdl:input>
>>> <wsdl:output message="tns:loadResponse" name="loadResponse">
>>> </wsdl:output>
>>> <wsdl:fault message="tns:DataAccessNotFoundWebFault"
>>> name="DataAccessNotFoundWebFault">
>>> </wsdl:fault>
>>> <wsdl:fault message="tns:ImproperArgumentWebFault"
>>> name="ImproperArgumentWebFault">
>>> </wsdl:fault>
>>> <wsdl:fault message="tns:DataAccessRetryWebFault"
>>> name="DataAccessRetryWebFault">
>>> </wsdl:fault>
>>> </wsdl:operation>
>>> <wsdl:operation name="save">
>>> <wsdl:input message="tns:save" name="save">
>>> </wsdl:input>
>>> <wsdl:output message="tns:saveResponse" name="saveResponse">
>>> </wsdl:output>
>>> <wsdl:fault message="tns:DataAccessConstraintWebFault"
>>> name="DataAccessConstraintWebFault">
>>> </wsdl:fault>
>>> <wsdl:fault message="tns:ImproperArgumentWebFault"
>>> name="ImproperArgumentWebFault">
>>> </wsdl:fault>
>>> <wsdl:fault message="tns:DataAccessDuplicateWebFault"
>>> name="DataAccessDuplicateWebFault">
>>> </wsdl:fault>
>>> <wsdl:fault message="tns:DataAccessRetryWebFault"
>>> name="DataAccessRetryWebFault">
>>> </wsdl:fault>
>>> </wsdl:operation>
>>> </wsdl:portType>
>>> <wsdl:binding name="TransferDocumentDataAccessImplServiceJBIBinding"
>>> type="tns:TransferDocumentDataAccess">
>>> <wsdl:operation name="load">
>>> <wsdl:input name="load">
>>> </wsdl:input>
>>> <wsdl:output name="loadResponse">
>>> </wsdl:output>
>>> <wsdl:fault name="DataAccessNotFoundWebFault">
>>> </wsdl:fault>
>>> <wsdl:fault name="ImproperArgumentWebFault">
>>> </wsdl:fault>
>>> <wsdl:fault name="DataAccessRetryWebFault">
>>> </wsdl:fault>
>>> </wsdl:operation>
>>> <wsdl:operation name="save">
>>> <wsdl:input name="save">
>>> </wsdl:input>
>>> <wsdl:output name="saveResponse">
>>> </wsdl:output>
>>> <wsdl:fault name="DataAccessConstraintWebFault">
>>> </wsdl:fault>
>>> <wsdl:fault name="ImproperArgumentWebFault">
>>> </wsdl:fault>
>>> <wsdl:fault name="DataAccessDuplicateWebFault">
>>> </wsdl:fault>
>>> <wsdl:fault name="DataAccessRetryWebFault">
>>> </wsdl:fault>
>>> </wsdl:operation>
>>> </wsdl:binding>
>>> <wsdl:service name="TransferDocumentDataAccessImplService">
>>> <wsdl:port
>>> binding="tns:TransferDocumentDataAccessImplServiceJBIBinding"
>>> name="TransferDocumentDataAccessImplPort">
>>> </wsdl:port>
>>> </wsdl:service>
>>> </wsdl:definitions>
>>>
>>> [7] Logged error
>>> 14:03:44,092 | DEBUG | pool-component.servicemix-file-thread-1 |
>>> FileComponent | icemix.file.FilePollerEndpoint 298 |
>>> Polling
>>> directory c:\FilePollingService\TransferDocumentFileDrop
>>> 14:03:44,108 | DEBUG | pool-component.servicemix-file-thread-1 |
>>> FileComponent | icemix.file.FilePollerEndpoint 310 |
>>> Scheduling
>>> file
>>> c:\FilePollingService\TransferDocumentFileDrop\TransferDocument-
>>> wrapped-JBI.xml
>>> for processing
>>> 14:03:44,124 | DEBUG | pool-component.servicemix-file-thread-2 |
>>> FileComponent | icemix.file.FilePollerEndpoint 330 |
>>> Processing
>>> file
>>> c:\FilePollingService\TransferDocumentFileDrop\TransferDocument-
>>> wrapped-JBI.xml
>>> 14:03:44,186 | DEBUG | pool-component.servicemix-file-thread-2 |
>>> FileComponent | emix.common.AsyncBaseLifeCycle 626 |
>>> Created
>>> correlation id: ID:172.18.127.170-1230fc5d00b-5:0
>>> 14:03:44,186 | DEBUG | pool-component.servicemix-file-thread-2 |
>>> DeliveryChannelImpl | .messaging.DeliveryChannelImpl 425 | Send
>>> ID:172.18.127.170-1230fc5d00b-5:0 in DeliveryChannel{servicemix-file}
>>> 14:03:44,202 | DEBUG | pool-component.servicemix-file-thread-2 |
>>> SecuredBroker | mix.jbi.security.SecuredBroker 66 | send
>>> exchange with secure broker
>>> 14:03:44,202 | DEBUG | pool-component.servicemix-file-thread-2 |
>>> SecuredBroker | mix.jbi.security.SecuredBroker 72 |
>>> service
>>> name :{http://domain.services.mycompany.com/}PipelineRoutingService
>>> 14:03:44,202 | DEBUG | pool-component.servicemix-file-thread-2 |
>>> SecuredBroker | mix.jbi.security.SecuredBroker 73 |
>>> operation
>>> name :null
>>> 14:03:44,202 | DEBUG | pool-component.servicemix-file-thread-2 |
>>> SedaFlow
>>> | emix.jbi.nmr.flow.AbstractFlow 118 | Called Flow send
>>> 14:03:44,264 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 |
>>> SedaQueue
>>> | .jbi.nmr.flow.seda.SedaQueue$1 132 |
>>> org.apache.servicemix.jbi.nmr.flow.seda.sedaqueu...@a47962 dequeued
>>> exchange: InOnly[
>>> id: ID:172.18.127.170-1230fc5d00b-5:0
>>> status: Active
>>> role: provider
>>> service: {http://
>>> domain.services.mycompany.com/}PipelineRoutingService
>>> endpoint: SaveTransferDocumentRoute
>>> in: <?xml version="1.0" encoding="UTF-8"?><jbi:message
>>> xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper"
>>> xmlns:srv="http://domain.services.mycompany.com/"
>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="save"
>>> type="srv:saveRequest" version="1.0">
>>> <jbi:part>
>>> <dom:TransferDocument
>>> xmlns:dom="http://www.mycompany.com/domain">
>>> <dom:TransferHeader description="JBI Wrapped with routing">
>>> <dom:Organization id="123456"/>
>>> </dom:TransferHeader>
>>> </dom:TransferDocument>
>>> </jbi:part>
>>> </jbi:message>
>>> ]
>>> 14:03:44,295 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 |
>>> EIPComponent
>>> | emix.common.AsyncBaseLifeCycle 534 | Received exchange: status:
>>> Active,
>>> role: provider
>>> 14:03:44,295 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 |
>>> EIPComponent
>>> | emix.common.AsyncBaseLifeCycle 596 | Retrieved correlation id:
>>> ID:172.18.127.170-1230fc5d00b-5:0
>>> 14:03:44,295 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 |
>>> MemoryStore
>>> | cemix.store.memory.MemoryStore 51 | Storing object with id:
>>> ID:172.18.127.170-1230fc5d00b-5:0
>>> 14:03:44,311 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 |
>>> EIPComponent
>>> | emix.common.AsyncBaseLifeCycle 632 | Correlation id retrieved from
>>> ThreadLocal: ID:172.18.127.170-1230fc5d00b-5:0
>>> 14:03:44,311 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 |
>>> DeliveryChannelImpl | .messaging.DeliveryChannelImpl 425 | Send
>>> ID:172.18.127.170-1230fc5d00b-4:0 in DeliveryChannel{servicemix-eip}
>>> 14:03:44,311 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 |
>>> SecuredBroker | mix.jbi.security.SecuredBroker 66 | send
>>> exchange with secure broker
>>> 14:03:44,311 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 |
>>> SecuredBroker | mix.jbi.security.SecuredBroker 72 |
>>> service
>>> name
>>> :{http://
>>> domain.services.mycompany.com/}TransferDocumentDataAccessImplService
>>> 14:03:44,311 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 |
>>> SecuredBroker | mix.jbi.security.SecuredBroker 73 |
>>> operation
>>> name :{http://domain.services.mycompany.com/}save
>>> 14:03:44,327 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 |
>>> SedaFlow
>>> | emix.jbi.nmr.flow.AbstractFlow 118 | Called Flow send
>>> 14:03:44,342 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-1 |
>>> SedaQueue
>>> | .jbi.nmr.flow.seda.SedaQueue$1 132 |
>>> org.apache.servicemix.jbi.nmr.flow.seda.sedaqueu...@ad4bb0 dequeued
>>> exchange: InOut[
>>> id: ID:172.18.127.170-1230fc5d00b-4:0
>>> status: Active
>>> role: provider
>>> service:
>>> {http://
>>> domain.services.mycompany.com/}TransferDocumentDataAccessImplService
>>> endpoint: TransferDocumentDataAccessImplPort
>>> operation: {http://domain.services.mycompany.com/}save
>>> in: <?xml version="1.0" encoding="UTF-8"?><jbi:message
>>> xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper"
>>> xmlns:srv="http://domain.services.mycompany.com/"
>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="save"
>>> type="srv:saveRequest" version="1.0">
>>> <jbi:part>
>>> <dom:TransferDocument
>>> xmlns:dom="http://www.mycompany.com/domain">
>>> <dom:TransferHeader description="JBI Wrapped with routing">
>>> <dom:Organization id="123456"/>
>>> </dom:TransferHeader>
>>> </dom:TransferDocument>
>>> </jbi:part>
>>> </jbi:message>
>>> ]
>>> 14:03:44,374 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-1 |
>>> CxfSeComponent | emix.common.AsyncBaseLifeCycle 534 |
>>> Received
>>> exchange: status: Active, role: provider
>>> 14:03:44,374 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-1 |
>>> CxfSeComponent | emix.common.AsyncBaseLifeCycle 596 |
>>> Retrieved
>>> correlation id: ID:172.18.127.170-1230fc5d00b-5:0
>>> 14:03:44,967 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-1 |
>>> DeliveryChannelImpl | .messaging.DeliveryChannelImpl 425 | Send
>>> ID:172.18.127.170-1230fc5d00b-4:0 in DeliveryChannel{servicemix-cxf-
>>> se}
>>> 14:03:44,967 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-1 |
>>> SecuredBroker | mix.jbi.security.SecuredBroker 66 | send
>>> exchange with secure broker
>>> 14:03:44,967 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-1 |
>>> SedaFlow
>>> | emix.jbi.nmr.flow.AbstractFlow 118 | Called Flow send
>>> 14:03:44,983 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-2 |
>>> SedaQueue
>>> | .jbi.nmr.flow.seda.SedaQueue$1 132 |
>>> org.apache.servicemix.jbi.nmr.flow.seda.sedaqueu...@2fbd59 dequeued
>>> exchange: InOut[
>>> id: ID:172.18.127.170-1230fc5d00b-4:0
>>> status: Error
>>> role: consumer
>>> interface:
>>> {http://domain.services.mycompany.com/}TransferDocumentDataAccess
>>> service:
>>> {http://
>>> domain.services.mycompany.com/}TransferDocumentDataAccessImplService
>>> endpoint: TransferDocumentDataAccessImplPort
>>> operation: {http://domain.services.mycompany.com/}save
>>> in: <?xml version="1.0" encoding="UTF-8"?><jbi:message
>>> xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper"
>>> xmlns:srv="http://domain.services.mycompany.com/"
>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="save"
>>> type="srv:saveRequest" version="1.0">
>>> <jbi:part>
>>> <dom:TransferDocument
>>> xmlns:dom="http://www.mycompany.com/domain">
>>> <dom:TransferHeader description="JBI Wrapped with routing">
>>> <dom:Organization id="123456"/>
>>> </dom:TransferHeader>
>>> </dom:TransferDocument>
>>> </jbi:part>
>>> </jbi:message>
>>> error: org.apache.cxf.interceptor.Fault
>>> ]
>>> 14:03:45,014 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-2 |
>>> EIPComponent | emix.common.AsyncBaseLifeCycle 534 |
>>> Received
>>> exchange: status: Error, role: consumer
>>> 14:03:45,014 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-2 |
>>> EIPComponent | emix.common.AsyncBaseLifeCycle 596 |
>>> Retrieved
>>> correlation id: ID:172.18.127.170-1230fc5d00b-5:0
>>> 14:03:45,030 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-2 |
>>> MemoryStore | cemix.store.memory.MemoryStore 62 |
>>> Loading
>>> object with id: ID:172.18.127.170-1230fc5d00b-5:0
>>> 14:03:45,030 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-2 |
>>> DeliveryChannelImpl | .messaging.DeliveryChannelImpl 425 | Send
>>> ID:172.18.127.170-1230fc5d00b-5:0 in DeliveryChannel{servicemix-eip}
>>> 14:03:45,030 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-2 |
>>> SecuredBroker | mix.jbi.security.SecuredBroker 66 | send
>>> exchange with secure broker
>>> 14:03:45,030 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-2 |
>>> SedaFlow
>>> | emix.jbi.nmr.flow.AbstractFlow 118 | Called Flow send
>>> 14:03:45,045 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 |
>>> SedaQueue
>>> | .jbi.nmr.flow.seda.SedaQueue$1 132 |
>>> org.apache.servicemix.jbi.nmr.flow.seda.sedaqueu...@1112776 dequeued
>>> exchange: InOnly[
>>> id: ID:172.18.127.170-1230fc5d00b-5:0
>>> status: Error
>>> role: consumer
>>> service: {http://
>>> domain.services.mycompany.com/}PipelineRoutingService
>>> endpoint: SaveTransferDocumentRoute
>>> in: <?xml version="1.0" encoding="UTF-8"?><jbi:message
>>> xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper"
>>> xmlns:srv="http://domain.services.mycompany.com/"
>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="save"
>>> type="srv:saveRequest" version="1.0">
>>> <jbi:part>
>>> <dom:TransferDocument
>>> xmlns:dom="http://www.mycompany.com/domain">
>>> <dom:TransferHeader description="JBI Wrapped with routing">
>>> <dom:Organization id="123456"/>
>>> </dom:TransferHeader>
>>> </dom:TransferDocument>
>>> </jbi:part>
>>> </jbi:message>
>>> error: org.apache.cxf.interceptor.Fault
>>> ]
>>> 14:03:45,092 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 |
>>> FileComponent | emix.common.AsyncBaseLifeCycle 534 |
>>> Received
>>> exchange: status: Error, role: consumer
>>> 14:03:45,092 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 |
>>> FileComponent | emix.common.AsyncBaseLifeCycle 596 |
>>> Retrieved
>>> correlation id: ID:172.18.127.170-1230fc5d00b-5:0
>>> 14:03:45,092 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 |
>>> FileComponent | icemix.file.FilePollerEndpoint 369 |
>>> Releasing
>>> c:\FilePollingService\TransferDocumentFileDrop\TransferDocument-
>>> wrapped-JBI.xml
>>> 14:03:45,092 | WARN | pool-flow.seda.servicemix-eip-thread-2 |
>>> FileComponent | icemix.file.FilePollerEndpoint 389 |
>>> Message in
>>> file
>>> c:\FilePollingService\TransferDocumentFileDrop\TransferDocument-
>>> wrapped-JBI.xml
>>> could not be handled successfully: null
>>> org.apache.cxf.interceptor.Fault
>>> at
>>> org
>>> .apache
>>> .cxf
>>> .service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:119)
>>> at
>>> org
>>> .apache
>>> .cxf.jaxws.JAXWSMethodInvoker.createFault(JAXWSMethodInvoker.java:73)
>>> at
>>> org
>>> .apache
>>> .cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:107)
>>> at
>>> org
>>> .apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:
>>> 97)
>>> at
>>> org
>>> .apache
>>> .cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:68)
>>> at
>>> org.apache.cxf.interceptor.ServiceInvokerInterceptor
>>> $1.run(ServiceInvokerInterceptor.java:56)
>>> at
>>> org
>>> .apache
>>> .cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:
>>> 37)
>>> at
>>> org
>>> .apache
>>> .cxf
>>> .interceptor
>>> .ServiceInvokerInterceptor
>>> .handleMessage(ServiceInvokerInterceptor.java:92)
>>> at
>>> org
>>> .apache
>>> .cxf
>>> .phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:
>>> 220)
>>> at
>>> org
>>> .apache
>>> .cxf
>>> .transport
>>> .ChainInitiationObserver.onMessage(ChainInitiationObserver.java:78)
>>> at
>>> org
>>> .apache
>>> .cxf.transport.jbi.JBIDispatcherUtil.dispatch(JBIDispatcherUtil.java:
>>> 156)
>>> at
>>> org.apache.servicemix.cxfse.CxfSeEndpoint.process(CxfSeEndpoint.java:
>>> 283)
>>> at
>>> org
>>> .apache
>>> .servicemix
>>> .common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:600)
>>> at
>>> org
>>> .apache
>>> .servicemix
>>> .common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:
>>> 554)
>>> at
>>> org
>>> .apache
>>> .servicemix
>>> .common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:
>>> 510)
>>> at
>>> org
>>> .apache
>>> .servicemix
>>> .common
>>> .SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60)
>>> 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:168)
>>> at
>>> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue
>>> $1.run(SedaQueue.java:134)
>>> at
>>> java.util.concurrent.ThreadPoolExecutor
>>> $Worker.runTask(ThreadPoolExecutor.java:886)
>>> at
>>> java.util.concurrent.ThreadPoolExecutor
>>> $Worker.run(ThreadPoolExecutor.java:908)
>>> at java.lang.Thread.run(Thread.java:619)
>>> Caused by: java.lang.NullPointerException
>>> at
>>> com
>>> .mycompany
>>> .services
>>> .domain
>>> .TransferDocumentDataAccessImpl
>>> .save(TransferDocumentDataAccessImpl.java:34)
>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>> at
>>> sun
>>> .reflect
>>> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>> at
>>> sun
>>> .reflect
>>> .DelegatingMethodAccessorImpl
>>> .invoke(DelegatingMethodAccessorImpl.java:25)
>>> at java.lang.reflect.Method.invoke(Method.java:597)
>>> at
>>> org
>>> .apache
>>> .cxf
>>> .service
>>> .invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:136)
>>> at
>>> org
>>> .apache
>>> .cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:82)
>>> ... 20 more
>>> --
>>> View this message in context:
>>> http://www.nabble.com/CXF-SE%3A-null-XML-Payload-after-unmarshall-tp24942525p24942525.html
>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>
>>
>>
>> --
>> Freeman Fang
>> ------------------------
>> Open Source SOA: http://fusesource.com
>>
>>
>>
>
>
--
View this message in context:
http://www.nabble.com/CXF-SE%3A-null-XML-Payload-after-unmarshall-tp24942525p24956318.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.