Thank you very much. It worked. I got the http response printed in my log file
Gert Vanthienen wrote: > > L.S., > > I think you would have to work with the 'in' message in your bean > processor. Because the bean is in a pipeline, it will receive the > output from the previous processing step in the 'in' message rather > than in the 'out' message. > > Regards, > > Gert Vanthienen > ------------------------ > Open Source SOA: http://fusesource.com > Blog: http://gertvanthienen.blogspot.com/ > > > > On 26 April 2010 18:48, gnanda <[email protected]> wrote: >> >> I tried to log response code by adding a bean class to my flow >> from("jmstx:queue:spq2").bean(myBean,"setLocationUrI") >> .recipientList(header(HttpProducer.HTTP_URI)).bean(myBean,"printResponse"); >> in the printResponse() method I have below code >> >> log.info("MyBeanProcessor - Calling printResponse"); >> log.info("MyBeanProcessor -exchange.isFailed():" + >> exchange.isFailed()); >> Message out = exchange.getOut(); // giving >> nullpointerexception >> Object val = >> out.getHeader(HttpProducer.HTTP_RESPONSE_CODE); >> if (val != null) { >> log.info("MyBeanProcessor -val NOT null"); >> } else { >> log.info("MyBeanProcessor -val null"); >> } >> >> it is printing "val null" >> How would I recieve the resaponse code from http call? Do I need create >> an >> interceptor code? Please suggest. Any sample will be very helpful >> >> >> >> gnanda wrote: >>> >>> Thanks for the reply. In my scenario, the call to http is a an async >>> call >>> where the external webservice does not return any reply back. But it >>> would >>> just return me the status code whether accepted or not (200). I think I >>> need to write an interceptor code for this, but not sure how to write it >>> Any sample code or document will be very helpful >>> >>> >>> Claus Ibsen-2 wrote: >>>> >>>> On Fri, Apr 23, 2010 at 8:45 PM, gnanda >>>> <[email protected]> wrote: >>>>> >>>>> Hi all, >>>>> I am using camel to read a message from a Q sending to a HTTP >>>>> my route is as below >>>>> from("jmstx:queue:spq2").bean(myBean,"setLocationUrI") >>>>> .recipientList(header(HttpProducer.HTTP_URI)); >>>>> >>>>> I need to recive response code from the above http URI. >>>>> I need to make sure I receive 200 or 202 to declare as a success call. >>>>> How >>>>> would I receive the response code ? >>>>> Do I need to make the mep as in-out while sending exchange to external >>>>> web >>>>> service thru http endpoint to get the return code? >>>>> >>>> >>>> Since you only send to 1 endpoint in RecipientList, then Camel will >>>> return the last exchange as reply. >>>> >>>> So simply just continue routing after the recipient list, where you >>>> can check for the 200/202 codes. >>>> >>>> If you send to multiple endpoints in recipient list you can use an >>>> AggregationStrategy to merge the results together. >>>> >>>> >>>>> Please suggest >>>>> >>>>> -- >>>>> View this message in context: >>>>> http://old.nabble.com/smx%3Acamel%3A-receiving-http-response-tp28345025p28345025.html >>>>> Sent from the ServiceMix - User mailing list archive at Nabble.com. >>>>> >>>>> >>>> >>>> >>>> >>>> -- >>>> Claus Ibsen >>>> Apache Camel Committer >>>> >>>> Author of Camel in Action: http://www.manning.com/ibsen/ >>>> Open Source Integration: http://fusesource.com >>>> Blog: http://davsclaus.blogspot.com/ >>>> Twitter: http://twitter.com/davsclaus >>>> >>>> >>> >>> >> >> -- >> View this message in context: >> http://old.nabble.com/smx%3Acamel%3A-receiving-http-response-tp28345025p28367318.html >> Sent from the ServiceMix - User mailing list archive at Nabble.com. >> >> > > > ----- > --- > Gert Vanthienen > http://gertvanthienen.blogspot.com > -- View this message in context: http://old.nabble.com/smx%3Acamel%3A-receiving-http-response-tp28345025p28367595.html Sent from the ServiceMix - User mailing list archive at Nabble.com.
