Return-Path: Delivered-To: apmail-camel-users-archive@www.apache.org Received: (qmail 62691 invoked from network); 7 Aug 2009 00:44:51 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 7 Aug 2009 00:44:51 -0000 Received: (qmail 35925 invoked by uid 500); 7 Aug 2009 00:44:58 -0000 Delivered-To: apmail-camel-users-archive@camel.apache.org Received: (qmail 35850 invoked by uid 500); 7 Aug 2009 00:44:58 -0000 Mailing-List: contact users-help@camel.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@camel.apache.org Delivered-To: mailing list users@camel.apache.org Received: (qmail 35834 invoked by uid 99); 7 Aug 2009 00:44:58 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 07 Aug 2009 00:44:58 +0000 X-ASF-Spam-Status: No, hits=1.4 required=10.0 tests=FORGED_YAHOO_RCVD,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of lists@nabble.com designates 216.139.236.158 as permitted sender) Received: from [216.139.236.158] (HELO kuber.nabble.com) (216.139.236.158) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 07 Aug 2009 00:44:47 +0000 Received: from isper.nabble.com ([192.168.236.156]) by kuber.nabble.com with esmtp (Exim 4.63) (envelope-from ) id 1MZDZK-0003gb-Vs for users@camel.apache.org; Thu, 06 Aug 2009 17:44:26 -0700 Message-ID: <24857015.post@talk.nabble.com> Date: Thu, 6 Aug 2009 17:44:26 -0700 (PDT) From: jjb To: users@camel.apache.org Subject: Re: bean binding with inheritance & 2.0-M3 camel-http In-Reply-To: <24856990.post@talk.nabble.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Nabble-From: jj_burford@yahoo.com References: <24802648.post@talk.nabble.com> <5380c69c0908032301w6413279bsef55d951ad0a3a0a@mail.gmail.com> <24803535.post@talk.nabble.com> <5380c69c0908040059q6d7fd44dp2e22a1097b39891a@mail.gmail.com> <24813432.post@talk.nabble.com> <5380c69c0908050024x7b46bf74q7a8a3f003d2735d@mail.gmail.com> <24822320.post@talk.nabble.com> <5380c69c0908050121w78d016bbr473e616b945bf7ae@mail.gmail.com> <24823165.post@talk.nabble.com> <5380c69c0908050155k3213f313kc9c0dc5507c6eeb1@mail.gmail.com> <5380c69c0908050455v13d998bfkef811332756d6396@mail.gmail.com> <5380c69c0908050606t2ed40b20mf6ef8d524c7733a9@mail.gmail.com> <24855730.post@talk.nabble.com> <24856990.post@talk.nabble.com> X-Virus-Checked: Checked by ClamAV on apache.org FYI - The latest SNAPSHOT also doesn't contain the bean?method=3D fix either. Regards jjb wrote: >=20 > Hi >=20 > I have another question regarding how to obtain the body of the HTTP > message. Before the latest SNAPSHOT (in 2.0-M2), I used to be able to do > this: >=20 > String body =3D (String)exchange.getIn().getBody((new String()).getClass(= )); >=20 > This now gives me an empty String. Do you know how I can get the body of > an HTTP post now? >=20 > Regards >=20 >=20 > jjb wrote: >>=20 >> Hi, Claus. >>=20 >> I was hoping to get the latest SNAPSHOT with the HttpMessage.getResponse >> method implemented. I just updated from the SNAPSHOT repo and verified >> it's not there yet: >>=20 >> stealth: wget --no-check-certificate >> https://repository.apache.org/content/repositories/snapshots//org/apache= /camel/camel-http/2.0-SNAPSHOT/camel-http-2.0-SNAPSHOT.jar >> --2009-08-06 15:28:08--=20 >> https://repository.apache.org/content/repositories/snapshots//org/apache= /camel/camel-http/2.0-SNAPSHOT/camel-http-2.0-SNAPSHOT.jar >> Resolving repository.apache.org... 140.211.11.100 >> Connecting to repository.apache.org|140.211.11.100|:443... connected. >> WARNING: cannot verify repository.apache.org's certificate, issued by >> `/C=3DUS/ST=3DArizona/L=3DScottsdale/O=3DGoDaddy.com, >> Inc./OU=3Dhttp://certificates.godaddy.com/repository/CN=3DGo Daddy Secur= e >> Certification Authority/serialNumber=3D07969287': >> Self-signed certificate encountered. >> HTTP request sent, awaiting response... 200 OK >> Length: 42721 (42K) [text/plain] >> Saving to: `camel-http-2.0-SNAPSHOT.jar' >>=20 >> 100%[=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D>] >> 42,721 73.7K/s in 0.6s =20 >>=20 >> 2009-08-06 15:28:09 (73.7 KB/s) - `camel-http-2.0-SNAPSHOT.jar' saved >> [42721/42721] >>=20 >> stealth: javap -classpath camel-http-2.0-SNAPSHOT.jar >> org.apache.camel.component.http.HttpMessage >> Compiled from "HttpMessage.java" >> public class org.apache.camel.component.http.HttpMessage extends >> org.apache.camel.impl.DefaultMessage{ >> public >> org.apache.camel.component.http.HttpMessage(org.apache.camel.Exchange, >> javax.servlet.http.HttpServletRequest); >> public javax.servlet.http.HttpServletRequest getRequest(); >> protected java.lang.Object createBody(); >> } >>=20 >> stealth:=20 >>=20 >>=20 >> Do you know when it might make it into the repo? >>=20 >> Thanks! >>=20 >>=20 >> Claus Ibsen-2 wrote: >>>=20 >>> Hi >>>=20 >>> Also the bean method name issue has been fixed in trunk. >>> So if possible please test it at your side by building from source or >>> try SNAPSHOT when a new build is published to apache maven repos. >>>=20 >>> On Wed, Aug 5, 2009 at 1:55 PM, Claus Ibsen >>> wrote: >>>> Hi >>>> >>>> Okay I am committing a fix in short time. >>>> >>>> You can grab it using 2 ways >>>> - from the body using the camel type converter, to avoid ugly java typ= e >>>> casts >>>> - using java type cast to cast the message to HttpMessage >>>> >>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0// we have access to the Http= ServletRequest here and we >>>> can grab it if we need it >>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0HttpServletRequest req =3D >>>> exchange.getIn().getBody(HttpServletRequest.class); >>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0assertNotNull(req); >>>> >>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0// we have access to the Http= ServletResponse here and we >>>> can grab it if we need it >>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0HttpServletResponse res =3D >>>> exchange.getIn().getBody(HttpServletResponse.class); >>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0assertNotNull(res); >>>> >>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0// and they should also be on= HttpMessage >>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0HttpMessage msg =3D (HttpMess= age) exchange.getIn(); >>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0assertNotNull(msg.getRequest(= )); >>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0assertNotNull(msg.getResponse= ()); >>>> >>>> And use the output stream to write to the servlet response >>>> >>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0// and we can use servlet res= ponse to write to output stream >>>> also >>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0res.getOutputStream().print("= Written by servlet response"); >>>> >>>> >>>> On Wed, Aug 5, 2009 at 10:55 AM, Claus Ibsen >>>> wrote: >>>>> Hi >>>>> >>>>> Cool I have added a ticket to get it back >>>>> https://issues.apache.org/activemq/browse/CAMEL-1879 >>>>> >>>>> >>>>> On Wed, Aug 5, 2009 at 10:52 AM, jjb wrote: >>>>>> >>>>>> Hi, Claus. >>>>>> >>>>>> I built a framework to receive status related messages from a topic >>>>>> as the >>>>>> route is traversed. =C2=A0Consider the routes the define DerivedClas= s -> A >>>>>> -> B >>>>>> -> C. =C2=A0As each segment in the route executes, it sends JAXB/XML >>>>>> messages to >>>>>> a topic that are then forwarded back to the client via a callback. >>>>>> =C2=A0As the >>>>>> DerivedClass receives these messages, it sends them back over the >>>>>> HTTP >>>>>> socket (via the HttpServletResponse) to the invoking web client. >>>>>> =C2=A0This gives >>>>>> the web client a realtime flow of XML status updates while the >>>>>> different >>>>>> endpoints are traversed. =C2=A0Since I do not want DerivedClass to k= now >>>>>> about >>>>>> Camel or JMS, there is a class which DerivedClass submits a request >>>>>> to >>>>>> (manager instance below) that also listens on this topic for related >>>>>> status >>>>>> messages. =C2=A0These I get via callback and write them to the web c= lient >>>>>> accordingly: >>>>>> >>>>>> >>>>>> public interface Client >>>>>> { >>>>>> =C2=A0 =C2=A0public void notify(String status); >>>>>> } >>>>>> >>>>>> public DerivedClass implements Client >>>>>> { >>>>>> =C2=A0 =C2=A0HttpServletResponse response; >>>>>> >>>>>> =C2=A0 =C2=A0public void process(Exchange exchange) >>>>>> =C2=A0 =C2=A0{ >>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0HttpServletResponse response =3D ....; = =C2=A0 // need to know how to >>>>>> get >>>>>> this >>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0String request =3D "MY XML REQUEST"; =C2= =A0 // this is actually a >>>>>> JAXB >>>>>> serialized object >>>>>> >>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0// submit XML request to class which list= ens on topic and >>>>>> calls >>>>>> notify with stuff for us >>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0manager.submit(request, this); >>>>>> =C2=A0 =C2=A0} >>>>>> >>>>>> =C2=A0 =C2=A0// we get our stuff from the manager object which liste= ns on a >>>>>> topic and >>>>>> correlates status >>>>>> =C2=A0 =C2=A0// messages and calls this notify method >>>>>> =C2=A0 =C2=A0public notify(String status) >>>>>> =C2=A0 =C2=A0{ >>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 response.getWriter().println(status); >>>>>> =C2=A0 =C2=A0} >>>>>> } >>>>>> >>>>>> I was hoping 2.0-M3 Camel would allow access to HttpServletRequest a= s >>>>>> before >>>>>> 2.0-M3 so I can make my own synchronous writes to the HTTP client >>>>>> from >>>>>> DerivedClass with no dependence on Camel. >>>>>> >>>>>> Regards >>>>>> >>>>>> response.getWriter().println(statusStr) >>>>>> >>>>>> Claus Ibsen-2 wrote: >>>>>>> >>>>>>> Hi >>>>>>> >>>>>>> Ah the response may be missing on the HttpMessage. >>>>>>> >>>>>>> What do you need it for? >>>>>>> >>>>>>> On Wed, Aug 5, 2009 at 9:51 AM, jjb wrote: >>>>>>>> >>>>>>>> Hi, Claus. >>>>>>>> >>>>>>>> Thank you so much for looking into the issue. =C2=A0My last reques= t has >>>>>>>> to do >>>>>>>> with how to obtain a reference to the HttpServletResponse in the >>>>>>>> new (>=3D >>>>>>>> 2.0-M3) Camel API. =C2=A0I can get the HttpServletRequest as you >>>>>>>> suggested >>>>>>>> (using >>>>>>>> HttpMessage), but how do I obtain a reference to the >>>>>>>> HttpServletResponse >>>>>>>> from a method with is the "to" endpoint of a camel-jetty "from" >>>>>>>> route >>>>>>>> that >>>>>>>> takes an Exchange parameter as so: >>>>>>>> >>>>>>>> public void process(Exchange exchange) >>>>>>>> { >>>>>>>> =C2=A0 =C2=A0HttpMessage in =3D (HttpMessag) exchange.getIn(); >>>>>>>> =C2=A0 =C2=A0HttpServletRequest =3D in.getRequest(); >>>>>>>> >>>>>>>> =C2=A0 =C2=A0// how do I get to the HttpServletResponse which used= to be >>>>>>>> accessed < >>>>>>>> 2.0-M3 >>>>>>>> =C2=A0 =C2=A0// like this: HttpServletResponse response =3D >>>>>>>> ((HttpExchange)exchange).getResponse(); >>>>>>>> } >>>>>>>> >>>>>>>> Regards >>>>>>>> >>>>>>>> >>>>>>>> Claus Ibsen-2 wrote: >>>>>>>>> >>>>>>>>> Hi >>>>>>>>> >>>>>>>>> Thanks for the sample. I can reproduce the issue. >>>>>>>>> >>>>>>>>> The issue is that your base class implements the >>>>>>>>> javax.jms.MessageListener. >>>>>>>>> I will dig into why Camel prefers to invoke this method over the >>>>>>>>> method name specified. >>>>>>>>> >>>>>>>>> >>>>>>>>> On Tue, Aug 4, 2009 at 8:02 PM, jjb wrote: >>>>>>>>>> >>>>>>>>>> Hi. >>>>>>>>>> >>>>>>>>>> Attached is an example which recreates the bean issue. =C2=A0My = goal >>>>>>>>>> is to >>>>>>>>>> create >>>>>>>>>> a framework which localizes JMS/ActiveMQ and Camel stuff to one >>>>>>>>>> package. >>>>>>>>>> Then none of our business logic depends on it (it just passes >>>>>>>>>> POJOs >>>>>>>>>> around >>>>>>>>>> that are created from XSD using JAXB). =C2=A0This is why I can't= put >>>>>>>>>> the >>>>>>>>>> @Handler >>>>>>>>>> annotation in the DerivedClass. >>>>>>>>>> http://www.nabble.com/file/p24813432/camel_bug.tgz camel_bug.tgz >>>>>>>>>> >>>>>>>>>> About the 2.0-M3 Camel interface for HttpServletResponse - how d= o >>>>>>>>>> I get >>>>>>>>>> it >>>>>>>>>> from the Exchange? >>>>>>>>>> >>>>>>>>>> Thanks! >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Claus Ibsen-2 wrote: >>>>>>>>>>> >>>>>>>>>>> On Tue, Aug 4, 2009 at 9:26 AM, jjb wrote= : >>>>>>>>>>>> >>>>>>>>>>>> Hi. >>>>>>>>>>>> >>>>>>>>>>>> Thanks for the quick response. =C2=A0I switched to 2.0-M3 and = still >>>>>>>>>>>> had >>>>>>>>>>>> the >>>>>>>>>>>> problem - the BaseClass.onMessage still gets called. =C2=A0Is = there >>>>>>>>>>>> a >>>>>>>>>>>> newer >>>>>>>>>>>> release or something I can check out that might have this fix? >>>>>>>>>>>> =C2=A0Also, >>>>>>>>>>>> when I >>>>>>>>>>>> use 2.0-M3, how do I get the HttpServletResponse (your >>>>>>>>>>>> suggestion to >>>>>>>>>>>> get >>>>>>>>>>>> the >>>>>>>>>>>> HttpServletRequest worked for me - thanks)? >>>>>>>>>>>> >>>>>>>>>>>> Regards >>>>>>>>>>> >>>>>>>>>>> Hi >>>>>>>>>>> >>>>>>>>>>> About the bean problem. Could you create a ticket for it and >>>>>>>>>>> attach a >>>>>>>>>>> small sample with the issue? >>>>>>>>>>> >>>>>>>>>>> You can use the @Handler annotation to mark the method that >>>>>>>>>>> Camel >>>>>>>>>>> should use and then avoid using the ?method=3Dxxxx. >>>>>>>>>>> But I am interested in fixing why method=3Dxxx does not work fo= r >>>>>>>>>>> you. >>>>>>>>>>> >>>>>>>>>>> See more here >>>>>>>>>>> http://camel.apache.org/bean-binding.html >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Claus Ibsen-2 wrote: >>>>>>>>>>>>> >>>>>>>>>>>>> Hi >>>>>>>>>>>>> >>>>>>>>>>>>> On Tue, Aug 4, 2009 at 7:52 AM, jjb >>>>>>>>>>>>> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>> I have a hierarchy of objects which looks like this: >>>>>>>>>>>>>> >>>>>>>>>>>>>> public BaseClass implements javax.jms.MessageListener >>>>>>>>>>>>>> { >>>>>>>>>>>>>> =C2=A0 =C2=A0public void onMessage(javax.jms.Message message= ) >>>>>>>>>>>>>> =C2=A0 =C2=A0{ >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0// do something >>>>>>>>>>>>>> =C2=A0 =C2=A0} >>>>>>>>>>>>>> } >>>>>>>>>>>>>> >>>>>>>>>>>>>> public DerivedClass extends BaseClass >>>>>>>>>>>>>> { >>>>>>>>>>>>>> =C2=A0 =C2=A0public void process(String body) >>>>>>>>>>>>>> =C2=A0 =C2=A0{ >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0// do something >>>>>>>>>>>>>> =C2=A0 =C2=A0} >>>>>>>>>>>>>> } >>>>>>>>>>>>>> >>>>>>>>>>>>>> I then have the following XML in my camel-context.xml: >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> When I run this code, all messages from request.queue always >>>>>>>>>>>>>> go to >>>>>>>>>>>>>> BaseClass.onMessage, even though I explicitly want them to g= o >>>>>>>>>>>>>> to >>>>>>>>>>>>>> DerivedClass.process. =C2=A0Have I done something wrong or i= s this >>>>>>>>>>>>>> a bug >>>>>>>>>>>>>> (I >>>>>>>>>>>>>> read >>>>>>>>>>>>>> through the bean binding and it said it would first use >>>>>>>>>>>>>> methods >>>>>>>>>>>>>> that >>>>>>>>>>>>>> were >>>>>>>>>>>>>> explicitly specified in the bean's method parameter)? >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> We have fixed a bug in this relation in 2.0.x (cant remember >>>>>>>>>>>>> the >>>>>>>>>>>>> version, might be the 2.0m3). >>>>>>>>>>>>> >>>>>>>>>>>>> In older versions you can work around this by adding an @Body >>>>>>>>>>>>> annotation to your base class >>>>>>>>>>>>> =C2=A0 =C2=A0 public void process(@Body String body) >>>>>>>>>>>>> And Camel should prefer to use this method. >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>>> I also notice that the new 2.0-M3 version of camel-http no >>>>>>>>>>>>>> longer >>>>>>>>>>>>>> contains >>>>>>>>>>>>>> the class org.apache.camel.component.http.HttpExchange. >>>>>>>>>>>>>> =C2=A0Therefore, >>>>>>>>>>>>>> this >>>>>>>>>>>>>> code no longer compiles: >>>>>>>>>>>>>> >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0public void process(Exchange exch= ange) >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0{ >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0try >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0{ >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0HttpServletResponse response =3D >>>>>>>>>>>>>> ((HttpExchange)exchange).getResponse(); >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0HttpServletRequest request =3D >>>>>>>>>>>>>> ((HttpExchange)exchange).getRequest(); >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0HttpSession session =3D null; >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0if (request !=3D null) >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0session =3D >>>>>>>>>>>>>> request.getSession(true); >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 } >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0catch= (Exception e) >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0{ e.p= rintStackTrace(); } >>>>>>>>>>>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0 } >>>>>>>>>>>>>> >>>>>>>>>>>>>> Is there a new way to get the HttpServletResponse and such >>>>>>>>>>>>>> from the >>>>>>>>>>>>>> Exchange >>>>>>>>>>>>>> parameter? >>>>>>>>>>>>> >>>>>>>>>>>>> Its on the HttpMessage instead. >>>>>>>>>>>>> >>>>>>>>>>>>> HttpMessage in =3D (HttpMessag) exchange.getIn(); >>>>>>>>>>>>> HttpServletRequest =3D in.getRequest(); >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> Regards >>>>>>>>>>>>>> -- >>>>>>>>>>>>>> View this message in context: >>>>>>>>>>>>>> http://www.nabble.com/bean-binding-with-inheritance---2.0-M3= -camel-http-tp24802648p24802648.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 >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> View this message in context: >>>>>>>>>>>> http://www.nabble.com/bean-binding-with-inheritance---2.0-M3-c= amel-http-tp24802648p24803535.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 >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> View this message in context: >>>>>>>>>> http://www.nabble.com/bean-binding-with-inheritance---2.0-M3-cam= el-http-tp24802648p24813432.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 >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> View this message in context: >>>>>>>> http://www.nabble.com/bean-binding-with-inheritance---2.0-M3-camel= -http-tp24802648p24822320.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 >>>>>>> >>>>>>> >>>>>> >>>>>> -- >>>>>> View this message in context: >>>>>> http://www.nabble.com/bean-binding-with-inheritance---2.0-M3-camel-h= ttp-tp24802648p24823165.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 >>>> >>>=20 >>>=20 >>>=20 >>> --=20 >>> Claus Ibsen >>> Apache Camel Committer >>>=20 >>> Open Source Integration: http://fusesource.com >>> Blog: http://davsclaus.blogspot.com/ >>> Twitter: http://twitter.com/davsclaus >>>=20 >>>=20 >>=20 >>=20 >=20 >=20 --=20 View this message in context: http://www.nabble.com/bean-binding-with-inher= itance---2.0-M3-camel-http-tp24802648p24857015.html Sent from the Camel - Users mailing list archive at Nabble.com.