I am new to JTA and it's underlying transaction managers. Can anyone explain the pros/cons of each of these? Feel free to add others I didn't list in title.
Also, don't the major applications servers (WebSphere, JBoss, Glassfish) have their own JTA compliant transaction manager? In those environments, would you still use these third party implementations?
Bitronix is a software which helps to implement JTA. And also it helps to store data into database in a serialized way.
Narayana JTA supports construction of both local and distributed transactional applications which access databases using the JDBC APIs. JDBC supports two-phase commit of transactions, and is similar to the XA X/Open standard. Narayana provides JDBC support in package com.arjuna.ats.jdbc.
I am new to JTA and it's underlying transaction managers. Can anyone explain the pros/cons of each of these? Feel free to add others I didn't list in title.
Standalone transaction managers I'm aware of include Bitronix, SimpleJTA, Tyrex (dead?), JOTM (used in Jonas), GeronimoTM/Jencks (used in Geronimo), JBossTS (used in JBoss) and Atomikos.
I've never tested them all extensively (and this is what you would have to do if you have to choose one) so I can't provide an exhaustive pros/cons (and that would require some work). But here are some links:
Just in case, here is my very personal point of view:
Personally, I'd shortlist Atomikos and JBossTS and test them hardcore if I had to choose one.
Also, don't the major applications servers (WebSphere, JBoss, Glassfish) have their own JTA compliant transaction manager?
Of course they do, JTA is part of the Java EE specification, a Java EE server has to support it.
In those environments, would you still use these third party implementations?
No, I'd use the provided transaction manager (for simplicity, support, etc).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With