Right now, the container does not seem to be generating
transactions in all cases where it should.  For example, if you create a
stateless session bean and set the transaction property to REQUIRED, when
the method is called, the TransactionManager still reports no current
transaction.  I haven't tested enough to know whether this is a large
problem (transactions *never* generated), or a small problem (error
reading stateless configuration, or error when TxManager returns
transaction setting).
        However, assuming that was working, the process for an
XAConnection should work like this:

 - Bean requests Connection
 - XAConnection is created or released from pool
 - XAConnectionFactory registers XAResource (in prepareObject) with
     the current Transaction
 - Transaction calls start on the XAResource
 - XAConnection is returned to XADataSource
 - XADataSource extracts Connection from XAConnections and returns it
 - Bean uses Connection
 - Bean closes Connection
 - Close notification sent to XAConnection
 - XAConnection notifies listeners that it was closed
 - XAConnectionFactory is a listener, and deregisters XAResource with
     the current transaction
 - Transaction calls end on the XAResource
 - XAConnection is returned to pool (native JDBC2 driver) or held
     until commit/rollback (JDBC 1 wrappers)

        So in answer to your question, you do not call start or end
manually - instead, the Transaction calls start or end when you call
enlistResource or delistResource.

Aaron

On Mon, 5 Jun 2000, Jung , Christoph wrote:
> Hello,
> 
> I�m not sure whether I missed something obvious, but I�m lacking some hook
> in the tx-Package 
> such that additional XA-Resources can be successfully attached to ongoing
> transactions. 
> 
> Enlistement is quite easy through TxManager and TransactionImpl, but I could
> not find any single call to the start(Xid,boolean) 
> method of the resource. The xid of the transaction can furthermore not be
> accessed from outside the tx-package such that I am not 
> able to call start by myself. 
> 
> How is this resolved/should this be resolved in the case of XA-capable JDBC
> connections in Minerva? 
> 
> Best,
> CGJ
>  
> 


Reply via email to