Hi Claus,

Thanks for your reply.

With respect to 1), how is an Exchange marked as an Exception? What exactly
indicates that an Exchange has incurred in an Exception? Some property, some
header, etc.?

We need to get this development out soon, so we can't afford to wait until
v1.5. However, what comes to mind is that as a temporary solution we might
be able to create a Processor that deletes the properties/headers/whatever
that indicates that a message is an Exception, so that it is not processed
again by the Exception Handlers on the first route?

With respect to 2), basically I was just testing how the presence of an
errorHandler influences the exception handlers. The errorHandler is defined
at the top of my route, and the exception handlers are stated just before
the routing logic that can throw the exception. Essentially:

errorHandler(noErrorHandler());

from("xx").pipeline("a", "b", "c");

exception(ValidationException.class)....

from("direct:a").to("validator:...");

from("direct:b")....

from("direct:c")....

What I would expect this code to do is handle the ValidationException as
specified by the exception clause, whereas all other possible Exceptions
should do nothing (noErrorHandler()).

Instead, what happens is that the exception() clause is completely ignored
and even if a ValidationException is thrown, nothing happens.

Cheers!



Claus Ibsen wrote:
> 
> Hi Raul
> 
> Nice description of the problem. 
> 
> 1)
> I think you are hitting the problem that we have tracked in JIRA as:
> http://issues.apache.org/activemq/browse/CAMEL-960
> 
> As this is the 2nd or 3rd end-user hitting this, I think it's a must to
> get in Camel 1.5. Hadrian is working on it.
> 
> If possible please add a comment on the ticket and point to this forum
> thread using eg. a link from nabble. Then Hadrian (the engineer) working
> on this will see this one as well.
> 
> 
> 2)
> About the noErrorHandler. I think it basically does nothing. What is your
> expections here? Could you show some routing code with an noErrorHandler
> where you expect it to do something different that now?
> 
> 
> 
> Med venlig hilsen
>  
> Claus Ibsen
> ......................................
> Silverbullet
> Skovsgårdsvænget 21
> 8362 Hørning
> Tlf. +45 2962 7576
> Web: www.silverbullet.dk
> -----Original Message-----
> From: raulvk.soa [mailto:[EMAIL PROTECTED] 
> Sent: 7. oktober 2008 19:51
> To: [email protected]
> Subject: Exception Handling
> 
> 
> Hi everyone,
> 
> I have an integration flow composed of two camel routes.
> 
> The first route validates the incoming message against an XML schema,
> transforms it and sends it forth to the second route.
> 
> The second route validates the message against an XML Schema and if the
> result is a pass, sends the message over to another endpoint. However, if
> the validation fails, there is an exception(ValidationException.class)...
> instruction that captures the exception and does the following processing:
> logs it and creates an error reply message, which is sent back to the
> first
> route.
> 
> However, what happens is that when the first route receives this reply
> message, it triggers its own Exception handling mechanism (another
> exception(ValidationException.class)... instruction), handling the message
> again. Its like the Exception is being propagated back!
> 
> This behaviour is not what I expected, since the Exception was already
> dealt
> with accordingly by the route that was responsible for it when the error
> was
> raised..... So my question is, how can I remove the Exception information
> from the Exchange before it is sent back to route 1, so that the reply is
> not interpreted as an Exception again?
> 
> Also, another odd behaviour that I am experiencing is that if I set the
> following at the top of my route: errorHandler(noErrorHandler());   none
> of
> the configured exception(...) statements are triggered in case of an
> exception. Why is this? Are both statements exclusive?
> 
> Many thanks!!
> 
> Raul.
> 
> 
> 
> -- 
> View this message in context:
> http://www.nabble.com/Exception-Handling-tp19863662s22882p19863662.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Exception-Handling-tp19863662s22882p19874847.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to