JBoss.orgCommunity Documentation
JBoss Application Server is discussed here. Refer to the documentation for your application server for differences.
When JBossJTA runs embedded in JBoss Application Server, the transaction system is configured primarily through the
transaction-jboss-beans.xml
deployment descriptor, which overrides properties read from the
default properties file embedded in the .jar
file.
Table 4.1. Common configuration attributes
CoordinatorEnvironmentBean.defaultTimeout |
The default transaction timeout to be used for new transactions. Specified as an integer in seconds. |
CoordinatorEnvironmentBean.enableStatistics |
This determines whether or not the transaction service should gather statistical information. This information can then be viewed using the TransactionStatistics MBean. Specified as a Boolean. The default is to not gather this information. |
See the transaction-jboss-beans.xml
file and the JBoss Application Server administration and
configuration guide for further information.
To make JBossTS logging semantically consistent with JBoss Application Server, the
TransactionManagerService
modifies the level of some log messages, by overriding
the value of the LoggingEnvironmentBean.loggingFactory
property in the
jbossts-properties.xml
file. Therefore, the value of this property has no effect on the
logging behavior when running embedded in JBoss Application Server. By forcing use of the log4j_releveler
logger, the TransactionManagerService
changes the level of all
INFO
level messages in the transaction code to DEBUG
. Therefore, these
messages do not appear in log files if the filter level is INFO
. All other log messages behave
as normal.
The TransactionManager
bean provides transaction management services to other
components in JBoss Application Server. There are two different version of this bean and they requires different configuration. Take
care to select the transaction-jboss-beans.xml
suitable for your needs (local JTA or JTS).
You can coordinate transactions from a coordinator which is not located within the JBoss server , such as when using transactions created by an external OTS server. To ensure the transaction context is propagated via JRMP invocations to the server, the transaction propagation context factory needs to be explicitly set for the JRMP invoker proxy. This is done as follows:
JRMPInvokerProxy.setTPCFactory( new com.arjuna.ats.internal.jbossatx.jts.PropagationContextManager() );