I have been looking into the Jms API lately and I am not certain I understand the local vs transaction manager differences.
Scenario 1:
Consume message from Jms broker, process the message and commit transaction once processing succeeds otherwise rollback.
Scenario 2:
I want to proxy messages from one broker to another broker but I do not want to use XA transactions due to its slow nature. So the idea is to start a transaction for the broker I am consuming from and then within that transaction start a second transaction for the broker I am producing to and then commit the two transactions in succession. Lets ignore the issue of the duplication risk in this scenario which can be mitigated
What exactly is the difference to between using JMS commit(), rollback() APIs (Aka Local Transactions) vs using a Transaction Manager such as Spring's PlatformTransactionManager class? Is a transaction manager necessary in the second scenario at all and why so/not?
XA transactions are slow due its naturemay I be curious where have you taken your statement from? - chalda