[ https://issues.apache.org/jira/browse/CAMEL-4022?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Hadrian Zbarcea updated CAMEL-4022: ----------------------------------- Priority: Critical (was: Major) > Issue using errorBuilderRef with the xml dsl > -------------------------------------------- > > Key: CAMEL-4022 > URL: https://issues.apache.org/jira/browse/CAMEL-4022 > Project: Camel > Issue Type: Bug > Affects Versions: 2.7.1 > Reporter: Hadrian Zbarcea > Assignee: Hadrian Zbarcea > Priority: Critical > > While fixing issues around the errorHandler I noticed that <onException> > definitions defined in the camel context are ignored if a route specifies its > own errorHandlerRef. The reason is that we set the onException definition on > the default error handler. I have a fix for that, but I discovered a > different issue (I think) for which I would like to discuss the solution. > When we have an onException definition that looks kinda like this: > {code} > <onException> > <exception> java.lang.IllegalArgumentException</exception> > <to uri="mock:illegalArgumentException"/> > </onException> > {code} > ... something happens, the IAE exception is caught, we do something, but in > that process another exception is thrown. Currently, that would be caught by > the default error handler, which may not be what we want. > What error handler (if any) should handle exceptions thrown while in > onException? > The onException mechanism is somewhat similar to a try/catch. I don't think > the exceptions thrown while handling onException should be handled by the > same error handler configured for the route, or even the context scoped one. > The processing should be very simple, predictable and immutable. Since the > default "CamelDefaultErrorHandlerBuilder" can be replaced, it is not imho a > solution and we need one global one that does as little as possible (the > problem would be agreeing what that is: no redeliveries, logging or not, etc). > Thoughts? -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira