У меня настроен автономный JTA nirayana и две конечные точки REST
для начала транзакции
с использованием транзакции
@GetMapping("/starttx")
public String starttx() throws NotSupportedException, SystemException
{
// TransactionManager transactionManager = com.arjuna.ats.jta.TransactionManager.transactionManager();
UserTransaction userTransaction = com.arjuna.ats.jta.UserTransaction.userTransaction();
System.out.println(userTransaction);
userTransaction.begin();
System.out.println(userTransaction.getStatus());
System.out.println("trx started");
return "started";
}
@GetMapping("/createAccount")
// @Transactional(rollbackFor=RuntimeException.class)
public String account() throws SystemException
{
UserTransaction userTransaction = com.arjuna.ats.jta.UserTransaction.userTransaction();
System.out.println(userTransaction.getStatus());
em.persist(new AccountEntity("acc1"));
return "created account";
}
Я вызываю starttrx и createAccount соответственно, но в транзакции createAccount статус равен 6, что означает, что он не активен. Как я могу поделиться транзакцией, созданной в конечной точке starttx, с createAccount?