Camel async components like "vm" are being overhauled in the Camel 2.5 release. Any reason why you would not use the Camel jbi component instead of the Camel vm component in this scenario? The jbi component was designed for just this purpose and is likely much better tested within the SMX container than the Camel vm component.
/Ron ----- Original Message ---- From: slew <[email protected]> To: [email protected] Sent: Fri, August 6, 2010 4:51:57 AM Subject: VM Pipeline returns early Hi, I have a CXF web service which forwards via JBI to a camel route. The camel route calls out to a number or other routes which do things such as validation, auditing etc. These calls are made using the VM component since these sub-routes exist in other service assemblies. What I'm finding is that if VM routes are chained together, then I get a response to the web service after the first one has finished. As a simple example, if my route is like below: from("jbi:endpoint:urn:testcase/TestVMPipeline/Router?mep=in-out") .to("log:Received Message") .to("vm:testStep") .to("log:After Test Step") .setBody(constant("<Message xmlns=\"urn:testcase\">Want this one returned</Message>")) .to("log:End of route"); from("vm:testStep") .setBody(constant("<Message xmlns=\"urn:testcase\">Don't want this one returned</Message>")); I find that I get the response <Message xmlns=\"urn:testcase\">Don't want this one returned</Message>, when I want <Message xmlns=\"urn:testcase\">Want this one returned</Message>. How can I make the route block until all steps are complete? I'm using Camel 2.3 (same behaviour with 2.2) running in ServiceMix 3.3.2. I've attached the above test case, with a soapUI test project. http://servicemix.396122.n5.nabble.com/file/n2266432/TestVMPipeline.zip TestVMPipeline.zip Thanks for any advice, Steve. -- View this message in context: http://servicemix.396122.n5.nabble.com/VM-Pipeline-returns-early-tp2266432p2266432.html Sent from the ServiceMix - User mailing list archive at Nabble.com.
