For container-managed transactions, you control the transaction timeout interval by setting the value of the timeout-in-seconds property in the domain.xml file, which is in the config directory of your Application Server installation. For example, you would set the timeout value to 5 seconds as follows:
With this setting, if the transaction has not completed within 5 seconds, the EJB container rolls it back.
When the Application Server is first installed, the timeout value is set to 0:
If the value is 0, the transaction will not time out.
Only enterprise beans with container-managed transactions are affected by the timeout-in-seconds property. For enterprise beans with bean-managed JTA transactions, you invoke the setTransactionTimeout method of the UserTransaction interface.