It is better to initiate the transactions from the beans, however in some cases you want the transaction to be initiated from the servlet. In this case, proceed as follows:
...
try
{
Context initialContext = new InitialContext();
UserTransaction utx = (javax.transaction.UserTransaction)
initialContext.lookup("java:comp/UserTransaction");
utx.begin();
... do some interesting work here ...
if (success)
utx.commit();
else
utx.rollback();
}
catch (Exception ignore)
{
return ;
}
... |