Instead of using seda.. use direct so that the call does not return
that that point. Also try throwing in a thread(maxSize) to allocate a
thread pool to concurrently
execute the rest of the pipeline. For example:
from("cxf:bean:soapMessageEndpoint").process(myProc).thread(5).to("direct:a");
from("direct:a").aggregator(header("txid"),
aggregationStratergy).to("bean:testBean?methodName=processSOAP") ;
Regards,
Hiram
On Fri, Feb 22, 2008 at 6:52 PM, aswin.nair <[EMAIL PROTECTED]> wrote:
>
> I have a scenario where a Camel CXF consumer receives SOAP/XML messages and
> routes through Camel. The processing is completely synchronous and uses
> In/Out model where a response has to be generated for the request and
> currently things are working fine. We call multiple data providers (through
> SOAP/Http) in the route and for performance reasons I want these to be
> parallel and when the response comes back from these aggregate them to one
> message and continue processing.
> In short i want to achieve the following
>
> CFX Consumer -> Route ---> parallelly send messages and recieve responses
> ---> aggregate response --> further process ----> return
>
> A simple route like does not work in the CXF case as the seda is
> asynchronous and causes the call to return to the CXF consumer immediately
> after the invocation. The results from the seda a are processed, but are not
> send back to the CXF Consumer
>
> from("cxf:bean:soapMessageEndpoint").process(myProc).to("seda:a");
>
> from("seda:a").aggregator(header("txid"), aggregationStratergy)
> .to("bean:testBean?methodName=processSOAP") ;
>
> Is there any way we can parallelize the execution and aggregate the output
> and continue processing especially in the IN/OUT way using CXF consumer?
> Please advice.
>
>
> --
> View this message in context:
> http://www.nabble.com/Parallel-processing-route-tp15642110s22882p15642110.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>
>
--
Regards,
Hiram
Blog: http://hiramchirino.com
Open Source SOA
http://open.iona.com