You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Claus Ibsen (JIRA)" <ji...@apache.org> on 2009/06/15 17:04:35 UTC

[jira] Commented: (CAMEL-1715) TransactionErrorHandler - Add support for redelivery

    [ https://issues.apache.org/activemq/browse/CAMEL-1715?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52259#action_52259 ] 

Claus Ibsen commented on CAMEL-1715:
------------------------------------

trunk: 784803.

> TransactionErrorHandler - Add support for redelivery
> ----------------------------------------------------
>
>                 Key: CAMEL-1715
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1715
>             Project: Apache Camel
>          Issue Type: New Feature
>          Components: camel-core, camel-spring
>    Affects Versions: 2.0-M2
>            Reporter: Claus Ibsen
>            Assignee: Claus Ibsen
>             Fix For: 2.0.0
>
>
> TransactionErrorHandler is solely relying on the backing system handling redelivery et. all.
> What we should allow as end users in the past have requested is to mix these two. So you can use TransactionErrorHandler and still leverage all the goodies we know from the dead letter channel to eg. do redelivery inside Camel. But at the end still signaling an exception to the TransactionErrorHandler if we still could not process it.
> This allows you for instance to consume from a JMS queue, do some routing in Camel and allow Camel to do eg. local redelivery. For instance to upload some data to a FTP server still in the same transaction.
> For example if you had prior some processing steps that was expensive to compute it could make sense to have local redelivery near the problem instead of rolling the entire exchange back and retry from zero.
> And on top of that we leverage that all 3 major error handlers in Camel
> - dead letter channel
> - default error handler
> - transactional error handler
> All leverages on the same base class, the RedeliverErrorHandler, this allows us to reuse code.
> The spring transactional error handler needs a few callback hooks from RedeliverErrorHandler to be able to run inside a spring TX template.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.