Hi, Did you get a chance to look into this?
Thanks, Trivedi William Tam wrote: > > Hi Trivedi, I'll try to get that today. > > On Fri, Aug 28, 2009 at 3:26 PM, trivedi kumar > b<[email protected]> wrote: >> >> Hi William, >> >> I am using Camel 1.x, can you provide me a sample how to set headers in >> Exchange for POJO based CXF webservices? >> >> Thanks, >> Trivedi >> >> William Tam wrote: >>> >>> Try it with 2.0 if it is possible. Just set the Header.list in the >>> Camel out headers. If the headers that you are trying to set are >>> defined in WSDL, you may not be able to set them with as the >>> Header.list header since (I think) out parameters (Java objects) could >>> be marshaled into SOAP headers. If you are dealing with SOAP headers, >>> another option is PAYLOAD mode. It is a bit easier to work with SOAP >>> headers. >>> (see the section "How to deal with the message for a camel-cxf >>> endpoint in PAYLOAD data format" in >>> http://cwiki.apache.org/confluence/display/CAMEL/CXF). In 2.0, the >>> body of camel message is a CxfPayload<SoapHeader> object. You can >>> call CxfPayload.getHeaders() to get a List<Element> of SOAP headers. >>> To set you response, you just set your CxfPayload object in out body >>> of the exchange. >>> >>> On Thu, Aug 27, 2009 at 12:06 AM, William Tam<[email protected]> >>> wrote: >>>> What version of Camel are you running? I remember that we had some >>>> issue with SOAP headers getting dropped in older release. >>>> https://issues.apache.org/activemq/browse/CAMEL-1474. Also, are the >>>> headers that you are setting defined in your WSDL? >>>> >>>> >>>> >>>> >>>> On Wed, Aug 26, 2009 at 5:02 PM, trivedi kumar >>>> b<[email protected]> wrote: >>>>> >>>>> Hi, >>>>> >>>>> Sorry for the late response on this from my side, we could able to get >>>>> the >>>>> headers from the exchange but the problem that we are facing was how >>>>> to >>>>> set >>>>> the headers on out message? Any sample code? >>>>> >>>>> Thanks, >>>>> Trivedi >>>>> >>>>> >>>>> William Tam wrote: >>>>>> >>>>>> Just took a peek at the doc. The PAYLOAD mode doc in that area >>>>>> needs >>>>>> improvement, too. I will look into it. >>>>>> >>>>>> On Tue, Aug 25, 2009 at 11:01 AM, William Tam<[email protected]> >>>>>> wrote: >>>>>>> Will do, Claus. :-) Getting SOAP headers and body have been >>>>>>> documented for PAYLOAD mode (both 1.x and 2.x). For MESSAGE mode, >>>>>>> it >>>>>>> is not applicable as there is no SOAP processing (but we will >>>>>>> mention >>>>>>> it). We just have to add doc for POJO mode. >>>>>>> >>>>>>> On Tue, Aug 25, 2009 at 10:49 AM, Claus Ibsen<[email protected]> >>>>>>> wrote: >>>>>>>> On Tue, Aug 25, 2009 at 4:38 PM, William Tam<[email protected]> >>>>>>>> wrote: >>>>>>>>> In 1.x, we don't copy the Headers.list to Camel headers. You can >>>>>>>>> get >>>>>>>>> the Headers.list by first getting the CXF Message from Camel >>>>>>>>> Message. >>>>>>>>> And then, you can get the header list from CXF message. >>>>>>>>> >>>>>>>>> org.apache.camel.Message in = exchange.getIn(); >>>>>>>>> org.apache.camel.component.cxf.CxfMessage body = >>>>>>>>> (org.apache.camel.component.cxf.CxfMessage)in.getBody(); >>>>>>>>> org.apache.cxf.message.Message cxfMessage = body.getMessage(); >>>>>>>>> List<org.apache.cxf.headers.Header.Header> soapHeaders = >>>>>>>>> cxfMessage.get(org.apache.cxf.headers.Header.Header.HEADER_LIST); >>>>>>>>> >>>>>>>> >>>>>>>> No wonder CXF is hard, when you need all the "ugly" code above. >>>>>>>> >>>>>>>> As a lot of people are asking how to get SOAP headers from the 3 >>>>>>>> dataFormats. >>>>>>>> And as well how to get the body as type X. Or what the default type >>>>>>>> the body is returned as etc. >>>>>>>> >>>>>>>> It would be cool and nice if we added such description and sample >>>>>>>> on >>>>>>>> the CXF wiki page. >>>>>>>> >>>>>>>> Start with Camel 2.0 and then later if time we can do it for 1.x as >>>>>>>> well. >>>>>>>> >>>>>>>> Camel 2.0 >>>>>>>> ======== >>>>>>>> About body and headers using dataFormat=POJO >>>>>>>> bla bla >>>>>>>> >>>>>>>> About body and headers using dataFormat=MESSAGE >>>>>>>> bla bla >>>>>>>> >>>>>>>> About body and headers using dataFormat=RAW >>>>>>>> bla bla >>>>>>>> >>>>>>>> >>>>>>>>> >>>>>>>>> On Tue, Aug 25, 2009 at 10:18 AM, William >>>>>>>>> Tam<[email protected]> >>>>>>>>> wrote: >>>>>>>>>> Are you using 2.x? (My reply was assuming you were using 2.x). >>>>>>>>>> >>>>>>>>>> On Tue, Aug 25, 2009 at 10:16 AM, William >>>>>>>>>> Tam<[email protected]> >>>>>>>>>> wrote: >>>>>>>>>>> In POJO mode, the SOAP headers are copied to Camel IN headers as >>>>>>>>>>> "org.apache.cxf.headers.Headers.list." The header value is a >>>>>>>>>>> List >>>>>>>>>>> of >>>>>>>>>>> CXF Header objects >>>>>>>>>>> (http://svn.apache.org/repos/asf/cxf/trunk/api/src/main/java/org/apache/cxf/headers/Header.java). >>>>>>>>>>> That's how you can read request SOAP headers. You can add/edit >>>>>>>>>>> the >>>>>>>>>>> Headers.list header of Camel OUT headers to modify the response >>>>>>>>>>> SOAP >>>>>>>>>>> headers. >>>>>>>>>>> >>>>>>>>>>> Hope this help. >>>>>>>>>>> >>>>>>>>>>> - William >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Tue, Aug 25, 2009 at 1:42 AM, Claus >>>>>>>>>>> Ibsen<[email protected]> >>>>>>>>>>> wrote: >>>>>>>>>>>> On Thu, Aug 20, 2009 at 9:14 PM, trivedi kumar >>>>>>>>>>>> b<[email protected]> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>> Hi, >>>>>>>>>>>>> >>>>>>>>>>>>> I have exposed webservice using cxf and dataformat is "POJO". >>>>>>>>>>>>> With >>>>>>>>>>>>> in the >>>>>>>>>>>>> router, I want to get and set the soap headers in message >>>>>>>>>>>>> exchange, >>>>>>>>>>>>> can >>>>>>>>>>>>> someone help me on this? >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Get the attention of Willem Jiang as he works on CXF. >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>>> Thanks, >>>>>>>>>>>>> Trivedi >>>>>>>>>>>>> -- >>>>>>>>>>>>> View this message in context: >>>>>>>>>>>>> http://www.nabble.com/setting-soap-headers-in-camel-cxf-router-tp25068148p25068148.html >>>>>>>>>>>>> Sent from the Camel - Users mailing list archive at >>>>>>>>>>>>> Nabble.com. >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> Claus Ibsen >>>>>>>>>>>> Apache Camel Committer >>>>>>>>>>>> >>>>>>>>>>>> Open Source Integration: http://fusesource.com >>>>>>>>>>>> Blog: http://davsclaus.blogspot.com/ >>>>>>>>>>>> Twitter: http://twitter.com/davsclaus >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Claus Ibsen >>>>>>>> Apache Camel Committer >>>>>>>> >>>>>>>> Open Source Integration: http://fusesource.com >>>>>>>> Blog: http://davsclaus.blogspot.com/ >>>>>>>> Twitter: http://twitter.com/davsclaus >>>>>>>> >>>>>>> >>>>>> >>>>>> >>>>> >>>>> -- >>>>> View this message in context: >>>>> http://www.nabble.com/setting-soap-headers-in-camel-cxf-router-tp25068148p25157965.html >>>>> Sent from the Camel - Users mailing list archive at Nabble.com. >>>>> >>>>> >>>> >>> >>> >> >> -- >> View this message in context: >> http://www.nabble.com/setting-soap-headers-in-camel-cxf-router-tp25068148p25195593.html >> Sent from the Camel - Users mailing list archive at Nabble.com. >> >> > > -- View this message in context: http://www.nabble.com/setting-soap-headers-in-camel-cxf-router-tp25068148p25252694.html Sent from the Camel - Users mailing list archive at Nabble.com.
