Accessing the original message from before a split

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Accessing the original message from before a split

Bengt Rodehav
I'm using Camel 2.12.3 in Karaf 2.3.4.

I have a route that processes XML message. Each incoming XML message will
create three outgoing messages. I use a split() to accomplish this.

I have an error handler for this route that need to access the original XML
message and store that in a "failed" directory. I do this as follows:

          Message originalMessage =
theExchange.getUnitOfWork().getOriginalInMessage();

However, if the error occurs after the split then the above does not return
the "most original" message but the message that was sent into the split
part. How can I access the "most original" message?

/Bengt
Reply | Threaded
Open this post in threaded view
|

Re: Accessing the original message from before a split

Claus Ibsen-2
Store what you want as the "most original" message as a property on
the exchange, then you can always get that later at any time

On Thu, Mar 20, 2014 at 11:58 AM, Bengt Rodehav <[hidden email]> wrote:

> I'm using Camel 2.12.3 in Karaf 2.3.4.
>
> I have a route that processes XML message. Each incoming XML message will
> create three outgoing messages. I use a split() to accomplish this.
>
> I have an error handler for this route that need to access the original XML
> message and store that in a "failed" directory. I do this as follows:
>
>           Message originalMessage =
> theExchange.getUnitOfWork().getOriginalInMessage();
>
> However, if the error occurs after the split then the above does not return
> the "most original" message but the message that was sent into the split
> part. How can I access the "most original" message?
>
> /Bengt



--
Claus Ibsen
-----------------
Red Hat, Inc.
Email: [hidden email]
Twitter: davsclaus
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen
Make your Camel applications look hawt, try: http://hawt.io
Reply | Threaded
Open this post in threaded view
|

Re: Accessing the original message from before a split

Bengt Rodehav
Thanks for the tip Claus!


2014-03-20 12:19 GMT+01:00 Claus Ibsen <[hidden email]>:

> Store what you want as the "most original" message as a property on
> the exchange, then you can always get that later at any time
>
> On Thu, Mar 20, 2014 at 11:58 AM, Bengt Rodehav <[hidden email]> wrote:
> > I'm using Camel 2.12.3 in Karaf 2.3.4.
> >
> > I have a route that processes XML message. Each incoming XML message will
> > create three outgoing messages. I use a split() to accomplish this.
> >
> > I have an error handler for this route that need to access the original
> XML
> > message and store that in a "failed" directory. I do this as follows:
> >
> >           Message originalMessage =
> > theExchange.getUnitOfWork().getOriginalInMessage();
> >
> > However, if the error occurs after the split then the above does not
> return
> > the "most original" message but the message that was sent into the split
> > part. How can I access the "most original" message?
> >
> > /Bengt
>
>
>
> --
> Claus Ibsen
> -----------------
> Red Hat, Inc.
> Email: [hidden email]
> Twitter: davsclaus
> Blog: http://davsclaus.com
> Author of Camel in Action: http://www.manning.com/ibsen
> Make your Camel applications look hawt, try: http://hawt.io
>