Hi

See this FAQ
http://camel.apache.org/using-getin-or-getout-methods-on-exchange.html


On Thu, Jul 5, 2012 at 11:06 AM, iamniche <nhem...@scottlogic.co.uk> wrote:
> Hello,
>
> I have found an important difference in behaviour between processRef and
> beanRef, which maybe someone can explain to me, please.
>
> For example, take the following route, which consumes from a queue, enriches
> the message and then finally sends the message to another queue (where
> EnricherProcessor is a Processor, implementing the 'process' method)
>
>  from(REQUEST_QUEUE_ENDPOINT)
>                 .processRef(EnricherProcessor.ENRICHERPROCESSOR_ID)
>                 .to(RESPONSE_QUEUE_ENDPOINT);
>
> When using a Processor, the original message, not the enriched one, reaches
> the response queue, which is not what is expected.
>
> Compare this to the beanRef version:
>
> from(REQUEST_QUEUE_ENDPOINT)
>                 .beanRef(EnricherProcessor.ENRICHERPROCESSOR_ID, "process")
>                 .to(RESPONSE_QUEUE_ENDPOINT);
>
> Using beanRef, the enriched messaged reaches the response queue.
>
> Why the difference in this behaviour, please?
>
> In the Processor we only ever manipulate using exchange.getIn() since then
> the 'In' is copied to the 'Out' if getOut() has not been called (as per the
> documentation)
>
> Could someone explain this difference please?
>
> Cheerio,
> Nic
>
> --
> View this message in context: 
> http://camel.465427.n5.nabble.com/Important-difference-in-behaviour-between-processRef-and-beanRef-tp5715525.html
> Sent from the Camel - Users mailing list archive at Nabble.com.



-- 
Claus Ibsen
-----------------
FuseSource
Email: cib...@fusesource.com
Web: http://fusesource.com
Twitter: davsclaus, fusenews
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen

Reply via email to