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.

Reply via email to