Interface LocalTransaction


public interface LocalTransaction
The LocalTransaction defines a transaction demarcation interface for resource manager local transactions. Note that this interface is used for application level local transaction demarcation. The system contract level LocalTransaction interface (as defined in the jakarta.resource.spi package) is used by the container for local transaction management.

A local transaction is managed internal to a resource manager. There is no external transaction manager involved in the coordination of such transactions.

A CCI implementation can (but is not required to) implement the LocalTransaction interface. If the LocalTransaction interface is supported by a CCI implementation, then the method Connection.getLocalTransaction should return a LocalTransaction instance. A component can then use the returned LocalTransaction to demarcate a resource manager local transaction (associated with the Connection instance) on the underlying EIS instance.

Since:
0.8
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Begins a local transaction on an EIS instance.
    void
    Commits the current local transaction and release all locks held by the underlying EIS instance.
    void
    Rollbacks the current resource manager local transaction.
  • Method Details

    • begin

      void begin() throws ResourceException
      Begins a local transaction on an EIS instance.
      Throws:
      ResourceException - Failed to begin a local transaction. Examples of error cases are:
      • Resource adapter internal or EIS-specific error
      • Connection is already participating in a local or Jakarta™ Transactions transaction
    • commit

      void commit() throws ResourceException
      Commits the current local transaction and release all locks held by the underlying EIS instance.
      Throws:
      ResourceException - Failed to commit a local transaction. Examples of error cases are:
      • Resource adapter internal or EIS-specific error
      • Violation of integrity constraints, deadlock detection, communication failure during transaction completion, or any retry requirement
      • Connection is participating in an active Jakarta Transactions transaction
      • Invalid transaction context; commit operation invoked without an active transaction context
    • rollback

      void rollback() throws ResourceException
      Rollbacks the current resource manager local transaction.
      Throws:
      ResourceException - Failed to rollback a local transaction. Examples of error cases are:
      • Resource adapter internal or EIS-specific error
      • Connection is participating in an active Jakarta Transactions transaction
      • Invalid transaction context; rollback operation invoked without an active transaction context