Hi,

Looks like I got things a bit mixed up with the Synchronization usage in
the File consumer for some reason.

You're right, Spring JMS provides the JmsTransactionManager and we leverage
that in this case instead of reinventing the wheel. So as long as the
endpoints along the route share the same ConnectionFactory and are executed
in the same thread (careful with the async routing engine), Spring takes
care of synchronizing the sends/receives.

BTW - I want to clarify. What I meant with "Seda preserving transactional
integrity" is *not* a general statement, i.e. a transaction governed by a
Transaction Manager existing on the producer side of the Seda queue
(route1) will NOT be propagated to the consumer side (route2), as they are
running in different threads. My reply was in the context of the user's
question:

Using Seda is the transnational integrity preserved?
> Let say the delivery of one message using seda fails, does camel recognize
> it and redeliver it?


If JavaSpaces on route2 throws an exception, then it can be propagated to
route1 such that the JMS transaction will roll back. But a JMS send done in
turn form route2 will not enlist itself in the existing TX.

I hope this clarifies things.

Regards,

*Raúl Kripalani*
Apache Camel PMC Member & Committer | Enterprise Architect, Open Source
Integration specialist
http://about.me/raulkripalani | http://www.linkedin.com/in/raulkripalani
http://blog.raulkr.net | twitter: @raulvk

On Wed, Jul 17, 2013 at 10:40 AM, gquintana <gerald.quint...@gmail.com>wrote:

> Hi Raúl,
>
> In a non XA world, how does this Unit of work concept mix with Spring's
> management of transaction and resources (connections) which are bound to
> thread by the TransactionSynchronizationManager?
>
>
>
>
>
> --
> View this message in context:
> http://camel.465427.n5.nabble.com/Incoming-message-from-a-JMS-queue-need-to-be-processed-in-parallel-but-keep-the-ordering-of-messages-tp5735406p5735789.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>

Reply via email to