You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (JIRA)" <ji...@apache.org> on 2016/01/31 10:47:39 UTC

[jira] [Resolved] (CAMEL-9069) Add processor to immediately handle exception while in retry loop

     [ https://issues.apache.org/jira/browse/CAMEL-9069?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Claus Ibsen resolved CAMEL-9069.
--------------------------------
    Resolution: Fixed

There is a new onExceptionOccurred option you can configure as a processor

> Add processor to immediately handle exception while in retry loop
> -----------------------------------------------------------------
>
>                 Key: CAMEL-9069
>                 URL: https://issues.apache.org/jira/browse/CAMEL-9069
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-core
>            Reporter: Kevin Telford
>            Assignee: Claus Ibsen
>             Fix For: 2.17.0
>
>
> We have a recipientList of http4 endpoints.  Occasionally an endpoint won't be available, and will return an exception (whether a ConnectException, or any other ex and a status code of >=400).  To handle these errors we can use a defaultErrorHandler or leverage onException, and setup redelivery. What we then would like to do is some custom error handling on each occurrence of an exception.
> Both the defaultErrorHandler and onException support .onRedelivery().  While this is nice, when a retry delay grows large enough the lag between the exception and the .onRedelivery() call really begins to grow and so our custom error handling isn't as much “on error” as it is “on error and after a wait”.
> onException also supports a .process() call, however this only occurs once all redeliveries have failed.
> What would be ideal would be an additional .onExceptionOccur(Processor processor) method (or some such name) that allows for immediate processing upon an exception, even if its being handled within a retry loop.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)