Sachin-

There's not much to go on here, but it looks to me like your EIP components is expecting that the JMSCorrelationId property of the message has been set and it isn't at that point. Is your JMS consumer properly setting the property?


On Feb 24, 2008, at 10:57 PM, sachin2008 wrote:


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.


--
Daryl
http://itsallsemantics.com

"
        -- The Replacements




Reply via email to