<dependency>
<groupId>javax.transaction</groupId>
<artifactId>jta</artifactId>
<version>1.3</version>
</dependency>
import javax.transaction.TransactionManager;
import com.arjuna.ats.jta.TransactionManager;
public class TransactionManagerFactory {
public TransactionManager getTransactionManager() {
return com.arjuna.ats.jta.TransactionManager.transactionManager();
}
}
import javax.transaction.UserTransaction;
import javax.naming.InitialContext;
public class TransactionBoundary {
public UserTransaction getUserTransaction() throws Exception {
InitialContext initialContext = new InitialContext();
return (UserTransaction) initialContext.lookup("java:comp/UserTransaction");
}
}
import javax.transaction.UserTransaction;
public class TransactionExample {
public void executeTransaction() {
TransactionManagerFactory transactionManagerFactory = new TransactionManagerFactory();
TransactionBoundary transactionBoundary = new TransactionBoundary();
UserTransaction userTransaction = transactionBoundary.getUserTransaction();
userTransaction.begin();
userTransaction.commit();
}
}
import javax.transaction.UserTransaction;
public class TransactionExample {
public void executeTransaction() {
TransactionManagerFactory transactionManagerFactory = new TransactionManagerFactory();
TransactionBoundary transactionBoundary = new TransactionBoundary();
UserTransaction userTransaction = transactionBoundary.getUserTransaction();
userTransaction.begin();
try {
} catch (Exception e) {
userTransaction.rollback();
}
}
}