You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Marian Mróz <ma...@gmail.com> on 2008/04/04 16:22:14 UTC

Problem with eip:aggregator and jsr181 component

Hello, I'm working with some service units from ServiceMix and I created some
thing like that:

JMS Consumer -> XPath Splitter \
                                                Pipeline <-> JSR181
JMS Provider    <-  Aggregator    /

When I recive information from JSR181 across Pipeline aggregator can't
aggreage them together - there is error answer like this:
error: java.lang.IllegalArgumentException: Could not retrieve
correlation id for incoming exchange

configuration from eip:
<eip:pipeline service="client:Pipeline" endpoint="pfc">
       <eip:transformer>
       <eip:exchange-target service="client:clientServiceJSR"
endpoint="soap"/>
   </eip:transformer>
   <eip:target>
           <eip:exchange-target service="client:aggregator"
endpoint="aggregator"/>
   </eip:target>
  </eip:pipeline>

  <eip:xpath-splitter service="client:xpathSplitter"
endpoint="xpath" xpath="/clients/*">
   <eip:target>
     <eip:exchange-target service="client:Pipeline" endpoint="pfc" />
   </eip:target>
  </eip:xpath-splitter>

  <eip:split-aggregator service="client:aggregator" endpoint="aggregator">
   <eip:target>
     <eip:exchange-target
service="client:clientServiceJMSSOAPProvider"
endpoint="clientServiceJMSSOAPProvider"/>
   </eip:target>
  </eip:split-aggregator>
and

configuration from jsr181:
<jsr181:endpoint service="client:clientServiceJSR"
style="document" endpoint="jsr"
pojoClass="esbtoolkit.clientImpl" />

Re: Problem with eip:aggregator and jsr181 component

Posted by Guillaume Nodet <gn...@gmail.com>.
The patch provided contains other fixes that won't be included, so it may be
better to rewrite one at some point, but I don't think there is another more
easy way.  I suppose you could create a servicemix-bean endpoint, but it may
be easier to just modify the servicemix-eip component instead.

On Mon, Apr 7, 2008 at 11:50 AM, Lukasz L. <Lu...@sabre.com> wrote:

>
> Do you suggest to use patch provided with this issues or do you think
> there
> is some other way of routing configuration to achieve the same without
> loosing correlation id?
>
>
> gnodet wrote:
> >
> > I think this is related to a problem for which a JIRA has been raised
> > recently (https://issues.apache.org/activemq/browse/SM-1238).  The
> problem
> > is that the pipeline does not copy properties from the incoming exchange
> > to
> > the outoing exchange, which means the correlation id set by the splitter
> > is
> > lost.
> >
> > Btw, another way to do you config would be to use a single JMS endpoint
> > with
> > an InOut exchange and use the Async bridge which is part of FUSE ESB
> (read
> > http://gnodet.blogspot.com/2007/08/fuse-esb.html for more infos).
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/Problem-with-eip%3Aaggregator-and-jsr181-component-tp16497630p16536930.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>


-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/

Re: Problem with eip:aggregator and jsr181 component

Posted by "Lukasz L." <Lu...@sabre.com>.
Do you suggest to use patch provided with this issues or do you think there
is some other way of routing configuration to achieve the same without
loosing correlation id?


gnodet wrote:
> 
> I think this is related to a problem for which a JIRA has been raised
> recently (https://issues.apache.org/activemq/browse/SM-1238).  The problem
> is that the pipeline does not copy properties from the incoming exchange
> to
> the outoing exchange, which means the correlation id set by the splitter
> is
> lost.
> 
> Btw, another way to do you config would be to use a single JMS endpoint
> with
> an InOut exchange and use the Async bridge which is part of FUSE ESB (read
> http://gnodet.blogspot.com/2007/08/fuse-esb.html for more infos).
> 
> 

-- 
View this message in context: http://www.nabble.com/Problem-with-eip%3Aaggregator-and-jsr181-component-tp16497630p16536930.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: Problem with eip:aggregator and jsr181 component

Posted by Guillaume Nodet <gn...@gmail.com>.
I think this is related to a problem for which a JIRA has been raised
recently (https://issues.apache.org/activemq/browse/SM-1238).  The problem
is that the pipeline does not copy properties from the incoming exchange to
the outoing exchange, which means the correlation id set by the splitter is
lost.

Btw, another way to do you config would be to use a single JMS endpoint with
an InOut exchange and use the Async bridge which is part of FUSE ESB (read
http://gnodet.blogspot.com/2007/08/fuse-esb.html for more infos).

On Fri, Apr 4, 2008 at 4:22 PM, Marian Mróz <ma...@gmail.com> wrote:

> Hello, I'm working with some service units from ServiceMix and I created
> some
> thing like that:
>
> JMS Consumer -> XPath Splitter \
>                                                Pipeline <-> JSR181
> JMS Provider    <-  Aggregator    /
>
> When I recive information from JSR181 across Pipeline aggregator can't
> aggreage them together - there is error answer like this:
> error: java.lang.IllegalArgumentException: Could not retrieve
> correlation id for incoming exchange
>
> configuration from eip:
> <eip:pipeline service="client:Pipeline" endpoint="pfc">
>       <eip:transformer>
>       <eip:exchange-target service="client:clientServiceJSR"
> endpoint="soap"/>
>   </eip:transformer>
>   <eip:target>
>           <eip:exchange-target service="client:aggregator"
> endpoint="aggregator"/>
>   </eip:target>
>  </eip:pipeline>
>
>  <eip:xpath-splitter service="client:xpathSplitter"
> endpoint="xpath" xpath="/clients/*">
>   <eip:target>
>     <eip:exchange-target service="client:Pipeline" endpoint="pfc" />
>   </eip:target>
>  </eip:xpath-splitter>
>
>  <eip:split-aggregator service="client:aggregator" endpoint="aggregator">
>   <eip:target>
>     <eip:exchange-target
> service="client:clientServiceJMSSOAPProvider"
> endpoint="clientServiceJMSSOAPProvider"/>
>   </eip:target>
>  </eip:split-aggregator>
> and
>
> configuration from jsr181:
> <jsr181:endpoint service="client:clientServiceJSR"
> style="document" endpoint="jsr"
> pojoClass="esbtoolkit.clientImpl" />
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/