javax.transaction
Interface UserTransaction

All Known Implementing Classes:
ClientUserTransaction (src) , DummyUserTransaction (src) , EnterpriseContext.UserTransactionImpl (src) , IIOPClientUserTransaction (src) , ServerVMClientUserTransaction (src)

public interface UserTransaction

This interface allows an application to explicitly manage transactions.


Method Summary
 void begin()
          Starts a new transaction, and associate it with the calling thread.
 void commit()
          Commit the transaction associated with the calling thread.
 int getStatus()
          Get the status of the transaction associated with the calling thread.
 void rollback()
          Rolls back the transaction associated with the calling thread.
 void setRollbackOnly()
          Mark the transaction associated with the calling thread for rollback only.
 void setTransactionTimeout(int seconds)
          Change the transaction timeout for transactions started by the calling thread with the begin() method.
 

Method Detail

begin

public void begin()
           throws NotSupportedException (src) ,
                  SystemException (src) 
Starts a new transaction, and associate it with the calling thread.

Throws:
NotSupportedException (src) - If the calling thread is already associated with a transaction, and nested transactions are not supported.
SystemException (src) - If the transaction service fails in an unexpected way.

commit

public void commit()
            throws RollbackException (src) ,
                   HeuristicMixedException (src) ,
                   HeuristicRollbackException (src) ,
                   java.lang.SecurityException,
                   java.lang.IllegalStateException,
                   SystemException (src) 
Commit the transaction associated with the calling thread.

Throws:
RollbackException (src) - If the transaction was marked for rollback only, the transaction is rolled back and this exception is thrown.
java.lang.IllegalStateException - If the calling thread is not associated with a transaction.
SystemException (src) - If the transaction service fails in an unexpected way.
HeuristicMixedException (src) - If a heuristic decision was made and some some parts of the transaction have been committed while other parts have been rolled back.
HeuristicRollbackException (src) - If a heuristic decision to roll back the transaction was made.
java.lang.SecurityException - If the caller is not allowed to commit this transaction.

rollback

public void rollback()
              throws java.lang.IllegalStateException,
                     java.lang.SecurityException,
                     SystemException (src) 
Rolls back the transaction associated with the calling thread.

Throws:
java.lang.IllegalStateException - If the transaction is in a state where it cannot be rolled back. This could be because the calling thread is not associated with a transaction, or because it is in the prepared state.
java.lang.SecurityException - If the caller is not allowed to roll back this transaction.
SystemException (src) - If the transaction service fails in an unexpected way.

setRollbackOnly

public void setRollbackOnly()
                     throws java.lang.IllegalStateException,
                            SystemException (src) 
Mark the transaction associated with the calling thread for rollback only.

Throws:
java.lang.IllegalStateException - If the transaction is in a state where it cannot be rolled back. This could be because the calling thread is not associated with a transaction, or because it is in the prepared state.
SystemException (src) - If the transaction service fails in an unexpected way.

getStatus

public int getStatus()
              throws SystemException (src) 
Get the status of the transaction associated with the calling thread.

Returns:
The status of the transaction. This is one of the Status (src) constants. If no transaction is associated with the calling thread, Status.STATUS_NO_TRANSACTION is returned.
Throws:
SystemException (src) - If the transaction service fails in an unexpected way.

setTransactionTimeout

public void setTransactionTimeout(int seconds)
                           throws SystemException (src) 
Change the transaction timeout for transactions started by the calling thread with the begin() method.

Parameters:
seconds - The new timeout value, in seconds. If this parameter is 0, the timeout value is reset to the default value.
Throws:
SystemException (src) - If the transaction service fails in an unexpected way.