Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
Transports 1.1
-
None
-
None
Description
In the JMS transport, when using JTA transactions, and if you set transport.jms.SessionTransacted=true, then the the transaction mode changes to "local" automatically. Some transaction providers, i.e. Atomikos, requires you set SessionTransacted to true or else, it will not work properly [1]. Basically, it will not replay the transactions if the distributed transaction fails.
So basically, it should be possible to set both transport.Transactionality=jta and transport.jms.SessionTransacted=true independantly without interfering with each other. The current logic in the code is, if transport.Transactionality=local, it sets transport.jms.SessionTransacted=true automatically, which is OK, but also when you set transport.jms.SessionTransacted=true, it sets transport.Transactionality=local, which should not happen, where the user should have the option to override that behaviour.
[1] http://fogbugz.atomikos.com/default.asp?community.6.1268.1
Cheers,
Anjana.