On Sun, Aug 16, 2009 at 11:00 PM, jjb<jj_burf...@yahoo.com> wrote: > > Hi, Claus. > > Indeed this worked for me. Thanks so much for your brilliant support! >
Glad we finally got you to a point where it worked for you. > Regards > > > Claus Ibsen-2 wrote: >> >> Hi >> >> Had a 2nd look and realized you need to use multipart/form instead to >> upload files. >> >> See example on ticket using curl with the -F option >> https://issues.apache.org/activemq/browse/CAMEL-1913 >> >> >> >> On Sat, Aug 15, 2009 at 12:23 PM, Claus Ibsen<claus.ib...@gmail.com> >> wrote: >>> Hi >>> >>> I had a look and found a glitch. I have created a ticket to track it >>> https://issues.apache.org/activemq/browse/CAMEL-1913 >>> >>> >>> On Fri, Aug 14, 2009 at 10:56 PM, jjb<jj_burf...@yahoo.com> wrote: >>>> >>>> Hi >>>> >>>> My example does use the POST method to send the data by virtue of using >>>> the >>>> --post-file option to wget. From the wget man page: >>>> >>>> --post-data=string >>>> --post-file=file >>>> Use POST as the method for all HTTP requests and send the >>>> specified data in the request body. "--post-data" sends string as data, >>>> whereas >>>> "--post-file" sends the contents of file. Other than that, >>>> they >>>> work in exactly the same way. >>>> >>>> So my wget example does indeed use POST. As I said, this used to work >>>> in >>>> Camel 2.0-M2. Am I missing something? Would you like me to provide an >>>> example or are you able to test this using what I have mentioned so far? >>>> If >>>> this works for you (using wget --post-file) with the latest SNAPSHOT >>>> then >>>> maybe you can show me what you are doing in your camel-context and bean >>>> method. >>>> >>>> Regards >>>> >>>> >>>> Claus Ibsen-2 wrote: >>>>> >>>>> Hi >>>>> >>>>> You should use POST to send data. GET is only for like query >>>>> parameters and the body is expected to be empty using GET. >>>>> As opposed to POST where the posted data is in the body. >>>>> >>>>> >>>>> >>>>> >>>>> On Thu, Aug 13, 2009 at 9:36 PM, jjb<jj_burf...@yahoo.com> wrote: >>>>>> >>>>>> FYI, I use the following wget command to test this: >>>>>> >>>>>> wget --post-file=ftm_request.xml --output-document=- >>>>>> http://localhost:8080/ftm/ >>>>>> >>>>>> Where the ftm_request.xml file has the following contents (which I >>>>>> want >>>>>> to >>>>>> get as a String in my HttpProcessor.process method): >>>>>> >>>>>> <ftm_request> >>>>>> <ftm_ping_request type="0" repid="12345678"/> >>>>>> </ftm_request> >>>>>> >>>>>> >>>>>> Regards >>>>>> >>>>>> >>>>>> jjb wrote: >>>>>>> >>>>>>> Hi >>>>>>> >>>>>>> I got a new SNAPSHOT release today but still am unable to get the >>>>>>> body >>>>>>> of >>>>>>> an HTTP request as a string. Here's an example of my setup: >>>>>>> >>>>>>> >>>>>>> From camel-context.xml: >>>>>>> >>>>>>> <!-- from Spring bean declaration portion --> >>>>>>> <bean id="http_processor" class="HttpProcessor"/> >>>>>>> >>>>>>> <!-- from Camel context portion --> >>>>>>> <route> >>>>>>> <from >>>>>>> uri="jetty:http://0.0.0.0:8080/ftm/?sessionSupport=true"/> >>>>>>> <to uri="bean:http_processor"/> >>>>>>> </route> >>>>>>> >>>>>>> >>>>>>> From HttpProcessor.java: >>>>>>> >>>>>>> public void process(Exchange exchange) >>>>>>> { >>>>>>> String body = >>>>>>> (String)exchange.getIn().getBody(String.class); >>>>>>> System.out.println("HTTP PROCESSOR GOT BODY " + body); >>>>>>> } >>>>>>> >>>>>>> >>>>>>> I get an empty String for the body portion. Is there another way to >>>>>>> get >>>>>>> the HTTP body as a String or is this just broken in the latest >>>>>>> SNAPSHOT >>>>>>> (this used to work in 2.0-M2)? >>>>>>> >>>>>>> Regards >>>>>>> >>>>>>> >>>>>>> jjb wrote: >>>>>>>> >>>>>>>> Hi >>>>>>>> >>>>>>>> So I got the latest SNAPSHOT and the bean binding issue as well as >>>>>>>> the >>>>>>>> camel-http getResponse issue have been fixed. Thank you so much for >>>>>>>> that. The last issue I am currently stuck on is the following code: >>>>>>>> >>>>>>>> String body = exchange.getIn().getBody(Sting.class); >>>>>>>> >>>>>>>> I still get an empty String back from this. >>>>>>>> >>>>>>>> Regards >>>>>>>> >>>>>>>> >>>>>>>> Claus Ibsen-2 wrote: >>>>>>>>> >>>>>>>>> On Fri, Aug 7, 2009 at 2:40 AM, jjb<jj_burf...@yahoo.com> wrote: >>>>>>>>>> >>>>>>>>>> Hi >>>>>>>>>> >>>>>>>>>> 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: >>>>>>>>>> >>>>>>>>>> String body = (String)exchange.getIn().getBody((new >>>>>>>>>> String()).getClass()); >>>>>>>>>> >>>>>>>>>> This now gives me an empty String. Do you know how I can get the >>>>>>>>>> body >>>>>>>>>> of an >>>>>>>>>> HTTP post now? >>>>>>>>> >>>>>>>>> String body = exchange.getIn().getBody(Sting.class); >>>>>>>>> should work. >>>>>>>>> >>>>>>>>> >>>>>>>>>> >>>>>>>>>> Regards >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> jjb wrote: >>>>>>>>>>> >>>>>>>>>>> Hi, Claus. >>>>>>>>>>> >>>>>>>>>>> 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: >>>>>>>>>>> >>>>>>>>>>> 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-- >>>>>>>>>>> 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=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, >>>>>>>>>>> Inc./OU=http://certificates.godaddy.com/repository/CN=Go Daddy >>>>>>>>>>> Secure >>>>>>>>>>> Certification Authority/serialNumber=07969287': >>>>>>>>>>> Self-signed certificate encountered. >>>>>>>>>>> HTTP request sent, awaiting response... 200 OK >>>>>>>>>>> Length: 42721 (42K) [text/plain] >>>>>>>>>>> Saving to: `camel-http-2.0-SNAPSHOT.jar' >>>>>>>>>>> >>>>>>>>>>> 100%[=================================================================================================================================================>] >>>>>>>>>>> 42,721 73.7K/s in 0.6s >>>>>>>>>>> >>>>>>>>>>> 2009-08-06 15:28:09 (73.7 KB/s) - `camel-http-2.0-SNAPSHOT.jar' >>>>>>>>>>> saved >>>>>>>>>>> [42721/42721] >>>>>>>>>>> >>>>>>>>>>> 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(); >>>>>>>>>>> } >>>>>>>>>>> >>>>>>>>>>> stealth: >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Do you know when it might make it into the repo? >>>>>>>>>>> >>>>>>>>>>> Thanks! >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Claus Ibsen-2 wrote: >>>>>>>>>>>> >>>>>>>>>>>> Hi >>>>>>>>>>>> >>>>>>>>>>>> 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. >>>>>>>>>>>> >>>>>>>>>>>> On Wed, Aug 5, 2009 at 1:55 PM, Claus >>>>>>>>>>>> Ibsen<claus.ib...@gmail.com> >>>>>>>>>>>> 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 >>>>>>>>>>>>> type >>>>>>>>>>>>> casts >>>>>>>>>>>>> - using java type cast to cast the message to HttpMessage >>>>>>>>>>>>> >>>>>>>>>>>>> // we have access to the HttpServletRequest here and >>>>>>>>>>>>> we >>>>>>>>>>>>> can grab it if we need it >>>>>>>>>>>>> HttpServletRequest req = >>>>>>>>>>>>> exchange.getIn().getBody(HttpServletRequest.class); >>>>>>>>>>>>> assertNotNull(req); >>>>>>>>>>>>> >>>>>>>>>>>>> // we have access to the HttpServletResponse here >>>>>>>>>>>>> and >>>>>>>>>>>>> we >>>>>>>>>>>>> can grab it if we need it >>>>>>>>>>>>> HttpServletResponse res = >>>>>>>>>>>>> exchange.getIn().getBody(HttpServletResponse.class); >>>>>>>>>>>>> assertNotNull(res); >>>>>>>>>>>>> >>>>>>>>>>>>> // and they should also be on HttpMessage >>>>>>>>>>>>> HttpMessage msg = (HttpMessage) exchange.getIn(); >>>>>>>>>>>>> assertNotNull(msg.getRequest()); >>>>>>>>>>>>> assertNotNull(msg.getResponse()); >>>>>>>>>>>>> >>>>>>>>>>>>> And use the output stream to write to the servlet response >>>>>>>>>>>>> >>>>>>>>>>>>> // and we can use servlet response to write to >>>>>>>>>>>>> output >>>>>>>>>>>>> stream >>>>>>>>>>>>> also >>>>>>>>>>>>> res.getOutputStream().print("Written by servlet >>>>>>>>>>>>> response"); >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> On Wed, Aug 5, 2009 at 10:55 AM, Claus >>>>>>>>>>>>> Ibsen<claus.ib...@gmail.com> >>>>>>>>>>>>> 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<jj_burf...@yahoo.com> >>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Hi, Claus. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> I built a framework to receive status related messages from a >>>>>>>>>>>>>>> topic as >>>>>>>>>>>>>>> the >>>>>>>>>>>>>>> route is traversed. Consider the routes the define >>>>>>>>>>>>>>> DerivedClass >>>>>>>>>>>>>>> -> A >>>>>>>>>>>>>>> -> B >>>>>>>>>>>>>>> -> C. As 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. >>>>>>>>>>>>>>> As >>>>>>>>>>>>>>> the >>>>>>>>>>>>>>> DerivedClass receives these messages, it sends them back over >>>>>>>>>>>>>>> the >>>>>>>>>>>>>>> HTTP >>>>>>>>>>>>>>> socket (via the HttpServletResponse) to the invoking web >>>>>>>>>>>>>>> client. >>>>>>>>>>>>>>> This >>>>>>>>>>>>>>> gives >>>>>>>>>>>>>>> the web client a realtime flow of XML status updates while >>>>>>>>>>>>>>> the >>>>>>>>>>>>>>> different >>>>>>>>>>>>>>> endpoints are traversed. Since I do not want DerivedClass to >>>>>>>>>>>>>>> know >>>>>>>>>>>>>>> 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. These I get via callback and write them to the web >>>>>>>>>>>>>>> client >>>>>>>>>>>>>>> accordingly: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> public interface Client >>>>>>>>>>>>>>> { >>>>>>>>>>>>>>> public void notify(String status); >>>>>>>>>>>>>>> } >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> public DerivedClass implements Client >>>>>>>>>>>>>>> { >>>>>>>>>>>>>>> HttpServletResponse response; >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> public void process(Exchange exchange) >>>>>>>>>>>>>>> { >>>>>>>>>>>>>>> HttpServletResponse response = ....; // need to know >>>>>>>>>>>>>>> how >>>>>>>>>>>>>>> to >>>>>>>>>>>>>>> get >>>>>>>>>>>>>>> this >>>>>>>>>>>>>>> String request = "MY XML REQUEST"; // this is >>>>>>>>>>>>>>> actually >>>>>>>>>>>>>>> a >>>>>>>>>>>>>>> JAXB >>>>>>>>>>>>>>> serialized object >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> // submit XML request to class which listens on topic >>>>>>>>>>>>>>> and >>>>>>>>>>>>>>> calls >>>>>>>>>>>>>>> notify with stuff for us >>>>>>>>>>>>>>> manager.submit(request, this); >>>>>>>>>>>>>>> } >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> // we get our stuff from the manager object which listens >>>>>>>>>>>>>>> on >>>>>>>>>>>>>>> a >>>>>>>>>>>>>>> topic and >>>>>>>>>>>>>>> correlates status >>>>>>>>>>>>>>> // messages and calls this notify method >>>>>>>>>>>>>>> public notify(String status) >>>>>>>>>>>>>>> { >>>>>>>>>>>>>>> response.getWriter().println(status); >>>>>>>>>>>>>>> } >>>>>>>>>>>>>>> } >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> I was hoping 2.0-M3 Camel would allow access to >>>>>>>>>>>>>>> HttpServletRequest >>>>>>>>>>>>>>> as >>>>>>>>>>>>>>> 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<jj_burf...@yahoo.com> >>>>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Hi, Claus. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Thank you so much for looking into the issue. My last >>>>>>>>>>>>>>>>> request >>>>>>>>>>>>>>>>> has >>>>>>>>>>>>>>>>> to do >>>>>>>>>>>>>>>>> with how to obtain a reference to the HttpServletResponse >>>>>>>>>>>>>>>>> in >>>>>>>>>>>>>>>>> the >>>>>>>>>>>>>>>>> new >>>>>>>>>>>>>>>>> (>= >>>>>>>>>>>>>>>>> 2.0-M3) Camel API. I 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) >>>>>>>>>>>>>>>>> { >>>>>>>>>>>>>>>>> HttpMessage in = (HttpMessag) exchange.getIn(); >>>>>>>>>>>>>>>>> HttpServletRequest = in.getRequest(); >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> // how do I get to the HttpServletResponse which used to >>>>>>>>>>>>>>>>> be >>>>>>>>>>>>>>>>> accessed < >>>>>>>>>>>>>>>>> 2.0-M3 >>>>>>>>>>>>>>>>> // like this: HttpServletResponse response = >>>>>>>>>>>>>>>>> ((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<jj_burf...@yahoo.com> >>>>>>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Hi. >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Attached is an example which recreates the bean issue. >>>>>>>>>>>>>>>>>>> My >>>>>>>>>>>>>>>>>>> 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). This 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 >>>>>>>>>>>>>>>>>>> do >>>>>>>>>>>>>>>>>>> I get >>>>>>>>>>>>>>>>>>> it >>>>>>>>>>>>>>>>>>> from the Exchange? >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Thanks! >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Claus Ibsen-2 wrote: >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> On Tue, Aug 4, 2009 at 9:26 AM, >>>>>>>>>>>>>>>>>>>> jjb<jj_burf...@yahoo.com> >>>>>>>>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> Hi. >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> Thanks for the quick response. I switched to 2.0-M3 >>>>>>>>>>>>>>>>>>>>> and >>>>>>>>>>>>>>>>>>>>> still >>>>>>>>>>>>>>>>>>>>> had >>>>>>>>>>>>>>>>>>>>> the >>>>>>>>>>>>>>>>>>>>> problem - the BaseClass.onMessage still gets called. >>>>>>>>>>>>>>>>>>>>> Is >>>>>>>>>>>>>>>>>>>>> there a >>>>>>>>>>>>>>>>>>>>> newer >>>>>>>>>>>>>>>>>>>>> release or something I can check out that might have >>>>>>>>>>>>>>>>>>>>> this >>>>>>>>>>>>>>>>>>>>> fix? >>>>>>>>>>>>>>>>>>>>> Also, >>>>>>>>>>>>>>>>>>>>> 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=xxxx. >>>>>>>>>>>>>>>>>>>> But I am interested in fixing why method=xxx does not >>>>>>>>>>>>>>>>>>>> work >>>>>>>>>>>>>>>>>>>> for >>>>>>>>>>>>>>>>>>>> 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<jj_burf...@yahoo.com> >>>>>>>>>>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> I have a hierarchy of objects which looks like this: >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> public BaseClass implements javax.jms.MessageListener >>>>>>>>>>>>>>>>>>>>>>> { >>>>>>>>>>>>>>>>>>>>>>> public void onMessage(javax.jms.Message message) >>>>>>>>>>>>>>>>>>>>>>> { >>>>>>>>>>>>>>>>>>>>>>> // do something >>>>>>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> public DerivedClass extends BaseClass >>>>>>>>>>>>>>>>>>>>>>> { >>>>>>>>>>>>>>>>>>>>>>> public void process(String body) >>>>>>>>>>>>>>>>>>>>>>> { >>>>>>>>>>>>>>>>>>>>>>> // do something >>>>>>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> I then have the following XML in my >>>>>>>>>>>>>>>>>>>>>>> camel-context.xml: >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> <bean id="processor" class="DerivedClass"/> >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> <route> >>>>>>>>>>>>>>>>>>>>>>> <from uri="activemq:request.queue"/> >>>>>>>>>>>>>>>>>>>>>>> <to uri="bean:processor?method=process"/> >>>>>>>>>>>>>>>>>>>>>>> </route> >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> When I run this code, all messages from request.queue >>>>>>>>>>>>>>>>>>>>>>> always >>>>>>>>>>>>>>>>>>>>>>> go to >>>>>>>>>>>>>>>>>>>>>>> BaseClass.onMessage, even though I explicitly want >>>>>>>>>>>>>>>>>>>>>>> them >>>>>>>>>>>>>>>>>>>>>>> to >>>>>>>>>>>>>>>>>>>>>>> go >>>>>>>>>>>>>>>>>>>>>>> to >>>>>>>>>>>>>>>>>>>>>>> DerivedClass.process. Have I done something wrong or >>>>>>>>>>>>>>>>>>>>>>> is >>>>>>>>>>>>>>>>>>>>>>> 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 >>>>>>>>>>>>>>>>>>>>>> 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. >>>>>>>>>>>>>>>>>>>>>>> Therefore, >>>>>>>>>>>>>>>>>>>>>>> this >>>>>>>>>>>>>>>>>>>>>>> code no longer compiles: >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> public void process(Exchange exchange) >>>>>>>>>>>>>>>>>>>>>>> { >>>>>>>>>>>>>>>>>>>>>>> try >>>>>>>>>>>>>>>>>>>>>>> { >>>>>>>>>>>>>>>>>>>>>>> HttpServletResponse response = >>>>>>>>>>>>>>>>>>>>>>> ((HttpExchange)exchange).getResponse(); >>>>>>>>>>>>>>>>>>>>>>> HttpServletRequest request = >>>>>>>>>>>>>>>>>>>>>>> ((HttpExchange)exchange).getRequest(); >>>>>>>>>>>>>>>>>>>>>>> HttpSession session = null; >>>>>>>>>>>>>>>>>>>>>>> if (request != null) >>>>>>>>>>>>>>>>>>>>>>> session = >>>>>>>>>>>>>>>>>>>>>>> request.getSession(true); >>>>>>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>>>>>> catch (Exception e) >>>>>>>>>>>>>>>>>>>>>>> { e.printStackTrace(); } >>>>>>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> Is there a new way to get the HttpServletResponse and >>>>>>>>>>>>>>>>>>>>>>> such >>>>>>>>>>>>>>>>>>>>>>> from the >>>>>>>>>>>>>>>>>>>>>>> Exchange >>>>>>>>>>>>>>>>>>>>>>> parameter? >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> Its on the HttpMessage instead. >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> HttpMessage in = (HttpMessag) exchange.getIn(); >>>>>>>>>>>>>>>>>>>>>> HttpServletRequest = 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-camel-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-camel-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-http-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 >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> 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-tp24802648p24856990.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-tp24802648p24957352.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-tp24802648p24978424.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/bean-binding-with-inheritance---2.0-M3-camel-http-tp24802648p24997805.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