Can anyone please resolve this issue.
Thanks in advance...
sachin2008 wrote:
>
> Thanks for your reply.
>
> I am using aggregator pattern to merge all the messages coming from
> lw-container with different correlation id's and send to the provider
> queue.
>
> My use case is:
>
> JMS consumer ------> cbr-----> pipeline---
> |----------lw-container(transformer)
>
> |----------aggregator(target)---------- JMS provider
>
> In this i am sending two messages from lw-container to aggregator with
> different correlation ids and it should aggregate those two messages and
> send it to the JMS provider.
>
> But i am getting the following exception:
>
> ERROR - EIPComponent - Error processing exchange InOnly[
> id: ID:pc007869-1232-1203652015207-110:0
> status: Active
> role: provider
> service: {http://servicemix.apache.org/poc}aggregator
> endpoint: aggreagte
> in: <?xml version="1.0" encoding="UTF-8"?><PAY_LOAD>EOS</PAY_LOAD>
> ]
> java.lang.IllegalArgumentException: Could not retrieve correlation id for
> incomi
> ng exchange
> at
> org.apache.servicemix.eip.support.AbstractAggregator.process(Abstract
> Aggregator.java:138)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLi
> feCycle.java:489)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(Async
> BaseLifeCycle.java:441)
> at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLife
> Cycle.java:46)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBoun
> d(DeliveryChannelImpl.java:593)
> at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlo
> w.java:174)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.j
> ava:176)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.jav
> a:134)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor
> ker.runTask(ThreadPoolExecutor.java:665)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor
> ker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:595)
> ERROR - EIPComponent - Error processing exchange InOnly[
> id: ID:pc007869-1232-1203652015207-110:1
> status: Active
> role: provider
> service: {http://servicemix.apache.org/poc}aggregator
> endpoint: aggreagte
> in: <?xml version="1.0" encoding="UTF-8"?><PAY_LOAD>EOS</PAY_LOAD>
> ]
> java.lang.IllegalArgumentException: Could not retrieve correlation id for
> incomi
> ng exchange
> at
> org.apache.servicemix.eip.support.AbstractAggregator.process(Abstract
> Aggregator.java:138)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLi
> feCycle.java:489)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(Async
> BaseLifeCycle.java:441)
> at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLife
> Cycle.java:46)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBoun
> d(DeliveryChannelImpl.java:593)
> at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlo
> w.java:174)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.j
> ava:176)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.jav
> a:134)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor
> ker.runTask(ThreadPoolExecutor.java:665)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor
> ker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:595)
> ERROR - SedaQueue -
> org.apache.servicemix.jbi.nmr.flow.seda
> [EMAIL PROTECTED] got error processing InOnly[
> id: ID:pc007869-1232-1203652015207-109:1
> status: Active
> role: provider
> service: {http://servicemix.apache.org/poc}FileReadService
> endpoint: poc_FileReadService
> in: <?xml version="1.0" encoding="UTF-8"?><PAY_LOAD>EOS</PAY_LOAD>
> ]
> java.lang.NullPointerException
> at FileReadService.SendResponse(FileReadService.java:42)
> at FileReadService.onMessageExchange(FileReadService.java:24)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBoun
> d(DeliveryChannelImpl.java:593)
> at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlo
> w.java:174)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.j
> ava:176)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.jav
> a:134)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor
> ker.runTask(ThreadPoolExecutor.java:665)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor
> ker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:595)
> ERROR - SedaQueue -
> org.apache.servicemix.jbi.nmr.flow.seda
> [EMAIL PROTECTED] got error processing InOnly[
> id: ID:pc007869-1232-1203652015207-109:0
> status: Active
> role: provider
> service: {http://servicemix.apache.org/poc}FileReadService
> endpoint: poc_FileReadService
> in: <?xml version="1.0" encoding="UTF-8"?><PAY_LOAD>EOS</PAY_LOAD>
> ]
> java.lang.NullPointerException
> at FileReadService.SendResponse(FileReadService.java:42)
> at FileReadService.onMessageExchange(FileReadService.java:24)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBoun
> d(DeliveryChannelImpl.java:593)
> at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlo
> w.java:174)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.j
> ava:176)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.jav
> a:134)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor
> ker.runTask(ThreadPoolExecutor.java:665)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor
> ker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:595)
>
> Can anyone please resolve this issue.
>
> Thanks in advance....
>
>
>
> but i am getting an error
>
> gnodet wrote:
>>
>> The jsr181 component can be configured with a given instance of the
>> class that will be used to process all the incoming exchanges. You
>> just need to make sure your code is designed to be used that way: a
>> single instance will receive all calls concurrently, as in the
>> servlets world. The servicemix-bean behaves the same way.
>>
>> Another way would be to implement your own aggregation strategy using
>> servicemix-eip or camel.
>> Servicemix-eip already provides some aggregation and can be extended
>> (but does not use any jaxb marshaling, so it depends if you need it or
>> not). Camel is really flexible and powerful and it may be worth to
>> take a look at it.
>>
>> On Wed, Feb 20, 2008 at 6:37 AM, sachin2008 <[EMAIL PROTECTED]> wrote:
>>>
>>> Hi,
>>>
>>> I am having a scenario:
>>>
>>> HTTP(BC)-------> JSR----------->Aggregator---------------->HTTP(BC)
>>>
>>> My requirement is:
>>>
>>> In JSR, we need incorporate the multi threading logic for getting the
>>> data
>>> from different data sources and by using the aggregator pattern we need
>>> to
>>> aggregate the xml data coming from different datasources and send the
>>> response back to the HTTP(BC).
>>>
>>> Can anyone please tell me how to use the aggregator pattern in this
>>> regard.
>>>
>>> --
>>> View this message in context:
>>> http://www.nabble.com/Reg%3AAggregator-Pattern-tp15582806s12049p15582806.html
>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>>
>> --
>> Cheers,
>> Guillaume Nodet
>> ------------------------
>> Blog: http://gnodet.blogspot.com/
>>
>>
>
>
--
View this message in context:
http://www.nabble.com/Reg%3AAggregator-Pattern-tp15582806s12049p15673584.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.