Class WebSphereExtendedJtaPlatform

  • All Implemented Interfaces:
    Serializable, TransactionManagerAccess, JtaPlatform, Service, Configurable, ServiceRegistryAwareService

    public class WebSphereExtendedJtaPlatform
    extends AbstractJtaPlatform
    JTA platform implementation intended for use with WebSphere Application Server (WAS).

    WAS, unlike every other app server on the planet, does not allow direct access to the JTS TransactionManager. Instead, for common transaction-related tasks users must utilize a proprietary API known as ExtendedJTATransaction.

    Even more unfortunate, the exact TransactionManagerLookup to use inside of WAS is highly dependent upon

    • WAS version
    • the WAS container in which Hibernate will be utilized

    This class is reported to work on WAS version 6 in any of the standard J2EE/Java EE component containers.

    See Also:
    Serialized Form
    • Constructor Detail

      • WebSphereExtendedJtaPlatform

        public WebSphereExtendedJtaPlatform()
    • Method Detail

      • getTransactionIdentifier

        public Object getTransactionIdentifier​(jakarta.transaction.Transaction transaction)
        Description copied from interface: JtaPlatform
        Determine an identifier for the given transaction appropriate for use in caching/lookup usages.

        Generally speaking the transaction itself will be returned here. This method was added specifically for use in WebSphere and other unfriendly Java EE containers.

        Specified by:
        getTransactionIdentifier in interface JtaPlatform
        Overrides:
        getTransactionIdentifier in class AbstractJtaPlatform
        Parameters:
        transaction - The transaction to be identified.
        Returns:
        An appropriate identifier