camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Raul Kripalani <>
Subject Re: Redelivery with multiple transacted routes
Date Thu, 19 Jan 2012 19:46:45 GMT
If you are using JMS transactions, how about rolling back the
transaction when an exception occurs, and letting AMQ do the
redelivery for you? That way the message will again enter the route at
the beginning (from endpoint).

You do this by configuring a redelivery policy on the connection
factory. Check out:

On 19 Jan 2012, at 18:27, Babak Vahdat <> wrote:

> Hi,
> I just copy&paste what the documentation says about this second question of
> yours:
> From Camel 2.4 onwards Camel has a feature to not block while waiting for a
> delayed redelivery to occur. However if you use transacted routes then Camel
> will block as its mandated by the transaction manager to execute all the
> work in the same thread context. You can enable the non blocking
> asynchronous behavior by the asyncDelayedRedelivery option. This option can
> be set on the errorHandler, onException or the redelivery policies.
> By default the error handler will create and use a scheduled thread pool to
> trigger redelivery in the future. From Camel 2.8 onwards you can configure
> the executorServiceRef on the Error Handler to indicate a reference to
> either a shared thread pool you can enlist in the registry, or a thread pool
> profile in case you want to be able to control pool settings.
> Babak
> --
> View this message in context:
> Sent from the Camel - Users mailing list archive at

View raw message