org.springframework.beans.factory.FactoryBean that retrieves
the JTA TransactionManager for IBM's WebSphere application servers
(versions 5.1, 6.0 and 6.1).
Uses WebSphere's static accessor methods to obtain the internal JTA
TransactionManager. This is known to work reliably on all tested WebSphere
versions; however, access to the internal TransactionManager facility
is not officially supported by IBM.
In combination with Spring's JtaTransactionManager, this FactoryBean
can be used to enable transaction suspension (PROPAGATION_REQUIRES_NEW,
PROPAGATION_NOT_SUPPORTED) on WebSphere:
<bean id="wsJtaTm" class="org.springframework.transaction.jta.WebSphereTransactionManagerFactoryBean"/>
<bean id="transactionManager" class="org.springframework.transaction.jta.JtaTransactionManager">
<property name="transactionManager ref="wsJtaTm"/>
</bean>
Note that Spring's JtaTransactionManager will continue to use the JTA
UserTransaction for standard transaction demarcation, as defined by
standard J2EE. It will only use the provided WebSphere TransactionManager
in case of actual transaction suspension needs. If you do not require
transaction suspension in the first place, do not bother with this FactoryBean.
NOTE: On recent WebSphere 6.0.x and 6.1.x versions, this class has
been superseded by the
WebSphereUowTransactionManager class, which
uses IBM's official UOWManager API facility for transaction suspension.
The WebSphereUowTransactionManager class is a direct replacement for a
standard JtaTransactionManager definition, without further configuration.
author: Juergen Hoeller since: 21.01.2004 See Also: JtaTransactionManager.setTransactionManager See Also: com.ibm.ws.Transaction.TransactionManagerFactory.getTransactionManager See Also: WebSphereUowTransactionManager |