You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by Claus Ibsen <cl...@gmail.com> on 2009/08/20 07:34:01 UTC
Re: Multicast & OnException - Bug? (camel 1.6.1)
On Tue, Aug 18, 2009 at 6:19 PM, Bob Yetman<bo...@verizon.net> wrote:
>
> I've been expermenting with camel 1.6.1, and come across a problem/bug with
> OnException.
>
> With the following route (greatly simplified for testing) everything works
> as expected and a file put into input shows up into output, and nothing
> shows up in the exception directory:
>
> <route>
> <from uri="file:///c:/temp/input"></from>
> <onException>
> <exception>java.lang.Exception</exception>
> <handled><constant>true</constant></handled>
> <to uri="file:///c:/temp/exception">
> </onException>
> <to uri="file:///c:/temp/output"></to>
> </route>
>
> However, when I have OnExceptions inside of multicast, things don't quite
> work as expected, the input
> file ends up in output & output2 as expected, but it also ends up in the
> exception and exception2 directorys, which shouldn't happen, since no
> exception is thrown in the route :
>
> <route>
> <from uri="file:///c:/temp/input"></from>
> <multicast>
> <pipeline>
> <onException>
> <exception>java.lang.Exception</exception>
> <handled><constant>true</constant></handled>
> <to uri="file:///c:/temp/exception">
> </onException>
> <to uri="file:///c:/temp/output"></to>
> </pipeline>
> <pipeline>
> <onException>
> <exception>java.lang.Exception</exception>
> <handled><constant>true</constant></handled>
> <to uri="file:///c:/temp/exception2">
> </onException>
> <to uri="file:///c:/temp/output2"></to>
> </pipeline>
> </multicast>
> </route>
>
> Three possibilites come to mind:
>
> 1. I've got something wrong in the route
Yeah see #2 and #3.
And try it with Camel 2.0 as we have improved it a lot over 1.x.
> 2. It's a bug in multicasting/onexception
Could be but the onException is not designed to be scatter everywhere
as you please. See #3.
> 3. I'm just not understanding something correctly.
>
Setting onException on a route is meant to be set in the start of the
route, eg just after from().
> Any help would be appreciated.
>
>
>
> --
> View this message in context: http://www.nabble.com/Multicast---OnException----Bug--%28camel-1.6.1%29-tp25028431p25028431.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>
>
--
Claus Ibsen
Apache Camel Committer
Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus
Re: Multicast & OnException - Bug? (camel 1.6.1)
Posted by Bob Yetman <bo...@verizon.net>.
Thanks for the info, I'll keep that in mind. I can't switch to camel 2.0, I'm
doing this via Progess Servicemix 3.4, which uses Camel 1.6.1. Maybe a
documentation update is in order in that it should state that the
onException should immediately follow a from().
Claus Ibsen-2 wrote:
>
> On Tue, Aug 18, 2009 at 6:19 PM, Bob Yetman<bo...@verizon.net> wrote:
>>
>> I've been expermenting with camel 1.6.1, and come across a problem/bug
>> with
>> OnException.
>>
>> With the following route (greatly simplified for testing) everything
>> works
>> as expected and a file put into input shows up into output, and nothing
>> shows up in the exception directory:
>>
>> <route>
>> <from uri="file:///c:/temp/input"></from>
>> <onException>
>> <exception>java.lang.Exception</exception>
>> <handled><constant>true</constant></handled>
>> <to uri="file:///c:/temp/exception">
>> </onException>
>> <to uri="file:///c:/temp/output"></to>
>> </route>
>>
>> However, when I have OnExceptions inside of multicast, things don't quite
>> work as expected, the input
>> file ends up in output & output2 as expected, but it also ends up in the
>> exception and exception2 directorys, which shouldn't happen, since no
>> exception is thrown in the route :
>>
>> <route>
>> <from uri="file:///c:/temp/input"></from>
>> <multicast>
>> <pipeline>
>> <onException>
>> <exception>java.lang.Exception</exception>
>> <handled><constant>true</constant></handled>
>> <to uri="file:///c:/temp/exception">
>> </onException>
>> <to uri="file:///c:/temp/output"></to>
>> </pipeline>
>> <pipeline>
>> <onException>
>> <exception>java.lang.Exception</exception>
>> <handled><constant>true</constant></handled>
>> <to uri="file:///c:/temp/exception2">
>> </onException>
>> <to uri="file:///c:/temp/output2"></to>
>> </pipeline>
>> </multicast>
>> </route>
>>
>> Three possibilites come to mind:
>>
>> 1. I've got something wrong in the route
>
> Yeah see #2 and #3.
> And try it with Camel 2.0 as we have improved it a lot over 1.x.
>
>
>> 2. It's a bug in multicasting/onexception
>
> Could be but the onException is not designed to be scatter everywhere
> as you please. See #3.
>
>> 3. I'm just not understanding something correctly.
>>
>
> Setting onException on a route is meant to be set in the start of the
> route, eg just after from().
>
>
>> Any help would be appreciated.
>>
>>
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Multicast---OnException----Bug--%28camel-1.6.1%29-tp25028431p25028431.html
>> Sent from the Camel - Users mailing list archive at Nabble.com.
>>
>>
>
>
>
> --
> Claus Ibsen
> Apache Camel Committer
>
> Open Source Integration: http://fusesource.com
> Blog: http://davsclaus.blogspot.com/
> Twitter: http://twitter.com/davsclaus
>
>
--
View this message in context: http://www.nabble.com/Multicast---OnException----Bug--%28camel-1.6.1%29-tp25028431p25065980.html
Sent from the Camel - Users mailing list archive at Nabble.com.