Hi, This is the Camel 1.x branch's CxfPayLoadSoapHeaderTest[1].
[1]https://svn.apache.org/repos/asf/camel/branches/camel-1.x/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfPayLoadSoapHeaderTest.java Willem trivedi kumar b wrote: > Hi Willem, > > I am using Apache camel 1.6.1 version and I couldn't find CxfPayload.class > file in the respective package. Is it something being supported in the later > versions of apache camel? The below links are really useful, thanks a lot > for providing them. > > Thanks, > Trivedi > > > willem.jiang wrote: >> Hi Trivedi, >> >> I think you mean the PAYLOAD dataformat, the answer is yes. >> Here is a Unit test[1] in the camel trunk. >> If you are using the POJO dataformat, you can't get the SOAPBody >> directly unless you use the WebServiceProvider API[2]. >> >> [1]https://svn.apache.org/repos/asf/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfPayLoadSoapHeaderTest.java >> [2]http://camel.apache.org/cxf-example.html#CXFExample-CXFexampleforusingtheWebServiceProviderAPI >> >> Willem >> >> trivedi kumar b wrote: >>> Hi Willem, >>> >>> Thank you very much for your response. I will try this option but have a >>> quick question on this. With POJO option, I would directly get SOAPBody, >>> what If I want to access soap headers for critical info like user >>> credentials? Is there a way to get these deatils from message context? >>> >>> Thanks, >>> Trivedi >>> >>> >>> willem.jiang wrote: >>>> CXF has some interceptors to deal with the attachment message. >>>> Since you are using MESSAGE dataFormat, you can't get attachment message >>>> from Message context. >>>> >>>> Can you try the PAYLOAD dataFormat? I think you could get attachments >>>> from the message. >>>> >>>> Willem >>>> >>>> trivedi kumar b wrote: >>>>> Hi, >>>>> >>>>> I have a webservice endpoint(implemented with CXF and dataFormat as >>>>> "MESSAGE").. the endpoint receives RAW xml message always instead of >>>>> POJO >>>>> object and the input request is a MTOM message. Now I want to extract >>>>> the >>>>> SOAPBody and attachments (MTOM based) from this RAW XML. Can someone >>>>> tell >>>>> me >>>>> what is the best way to achieve this? I am getting raw xml in >>>>> exchange.getIn().getBody(), I am able to print this object and here is >>>>> the >>>>> output: (you can also observe that with MTOM enabled, the SOAP message >>>>> and >>>>> attachements are going as mime parts). I really appreciate any help on >>>>> this. >>>>> >>>>> =================================================== >>>>> >>>>> ------=_Part_0_18152502.1245358049140 >>>>> Content-Type: application/xop+xml; charset=UTF-8; >>>>> type="application/soap+xml; >>>>> action=\"DocumentRepository_ProvideAndRegisterDocumentSet-b\"" >>>>> Content-Transfer-Encoding: 8bit >>>>> Content-ID: <rootp...@soapui.org> >>>>> >>>>> <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" >>>>> xmlns:urn="urn:ihe:iti:xds-b:2007" >>>>> xmlns:urn1="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:3.0" >>>>> xmlns:urn2="urn:oasis:names:tc:ebxml-regrep:xsd:rs:3.0" >>>>> xmlns:urn3="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"> >>>>> <soap:Header/> >>>>> <soap:Body> >>>>> <urn:ProvideAndRegisterDocumentSetRequest> >>>>> <urn:Document id="?"><inc:Include href="cid:965235575520" >>>>> xmlns:inc="http://www.w3.org/2004/08/xop/include"/></urn:Document> >>>>> </urn:ProvideAndRegisterDocumentSetRequest> >>>>> </soap:Body> >>>>> </soap:Envelope> >>>>> ------=_Part_0_18152502.1245358049140 >>>>> Content-Type: text/plain; charset=us-ascii >>>>> Content-Transfer-Encoding: 7bit >>>>> Content-ID: <965235575520> >>>>> >>>>> this is trivedi >>>>> ------=_Part_0_18152502.1245358049140-- >>>>> >>>>> ======================================================= >>>>> >>>>> Thanks, >>>>> Trivedi >>>> >> >> >