We are planning to write a bunch of camel contexts which contain
routes using only local endpoints (the vm component).  To get everyone
talking to one another, we'll create a "wiring" context which connects
the dots.  I was wondering how this will work with transactions.
Suppose I have a few routes like this...

In "wiring" context:

from("jms:queue:inputQueue").transacted().to("context:a:in");
from("context:a:out").transacted().to("jms:queue:outputQueue");

In context "a":

from("vm:in").transacted().to(...).to("vm:out");


I assume the transaction won't span through the route in context "a",
correct?  What happens here?  Let's say there's some failure in the
"..." part of my route with a database or something.  The original
message won't go back onto the "inputQueue" will it?  My understanding
is that the transacted() part will start a transaction once the route
begins and try to commit it when the route ends.

Reply via email to