3.5. Transaction Association
Transactions are associated with a transactional resource via the
start
method, and dissociated from the resource via the end
method. The resource adapter internally maintains an association between the resource connection object and the XAResource
object. At any given time, a connection is associated with zero or one transactions. Because JTA does not support nested transactions, the start
method cannot be invoked on a connection that is currently associated with a different transaction.
The transaction manager may interleave multiple transaction contexts with the same resource, as long as
start
and end
are invoked properly for each transaction context switch. Each time the resource is used with a different transaction, the end
method must be invoked for the previous transaction that was associated with the resource, and the start
method must be invoked for the current transaction context.