パッケージ jakarta.transaction
インターフェース Transaction
public interface TransactionTransaction インターフェースを使用すると、ターゲットの Transaction オブジェクトのトランザクションに対して操作を実行できます。Transaction オブジェクトは、各グローバルトランザクションの作成に対応して作成されます。Transaction オブジェクトは、リソースの登録、同期の登録、トランザクションの完了、ステータスクエリ操作に使用できます。- バージョン:
- Jakarta Transactions 2.0
方法の概要
すべてのメソッド インスタンスメソッド 抽象メソッド 修飾子と型 メソッド 説明 voidcommit()この Transaction オブジェクトが表すトランザクションを完了します。booleandelistResource(XAResourceSE xaRes, int flag)ターゲットの Transaction オブジェクトに関連付けられているトランザクションから、指定されたリソースの関連付けを解除します。booleanenlistResource(XAResourceSE xaRes)ターゲット Transaction オブジェクトに関連付けられたトランザクションで指定されたリソースを参加させます。intgetStatus()ターゲット Transaction オブジェクトに関連付けられたトランザクションのステータスを取得します。voidregisterSynchronization(Synchronization sync)現在ターゲットオブジェクトに関連付けられているトランザクションの同期オブジェクトを登録します。voidrollback()この Transaction オブジェクトが表すトランザクションをロールバックします。voidsetRollbackOnly()トランザクションの考えられる唯一の結果がトランザクションのロールバックになるように、ターゲットオブジェクトに関連付けられたトランザクションを変更します。
メソッドの詳細
commit
void commit() throws RollbackException, HeuristicMixedException, HeuristicRollbackException, SecurityExceptionSE, IllegalStateExceptionSE, SystemExceptionこの Transaction オブジェクトが表すトランザクションを完了します。- 例外:
RollbackException- トランザクションがコミットではなくロールバックされたことを示すためにスローされます。HeuristicMixedException- ヒューリスティックな決定が行われたこと、および一部の関連する更新がコミットされ、他のロールバックが行われたことを示すためにスローされます。HeuristicRollbackException- ヒューリスティックな決定が行われ、関連するすべての更新がロールバックされたことを示すためにスローされます。SecurityExceptionSE- スレッドがトランザクションのコミットを許可されていないことを示すためにスローされます。IllegalStateExceptionSE- ターゲットオブジェクトのトランザクションがアクティブでない場合にスローされます。SystemException- トランザクションマネージャーが予期しないエラー条件を検出した場合にスローされます。
delistResource
boolean delistResource(XAResourceSE xaRes, int flag) throws IllegalStateExceptionSE, SystemException
ターゲットの Transaction オブジェクトに関連付けられているトランザクションから、指定されたリソースの関連付けを解除します。- パラメーター:
xaRes- リソース(接続)に関連付けられた XAResource オブジェクト。flag- TMSUCCESS、TMSUSPEND、TMFAIL のいずれかの値。- 戻り値:
- リソースが正常に除外された場合は true。それ以外の場合は false。
- 例外:
IllegalStateExceptionSE- ターゲットオブジェクトのトランザクションがアクティブでない場合にスローされます。SystemException- トランザクションマネージャーが予期しないエラー条件を検出した場合にスローされます。
enlistResource
boolean enlistResource(XAResourceSE xaRes) throws RollbackException, IllegalStateExceptionSE, SystemException
ターゲット Transaction オブジェクトに関連付けられたトランザクションで指定されたリソースを参加させます。- パラメーター:
xaRes- リソース(接続)に関連付けられた XAResource オブジェクト。- 戻り値:
- リソースが正常に参加した場合は true。それ以外の場合は false。
- 例外:
RollbackException- トランザクションがロールバックのみにマークされていることを示すためにスローされます。IllegalStateExceptionSE- ターゲットオブジェクトのトランザクションが準備済み状態であるか、トランザクションが非アクティブである場合にスローされます。SystemException- トランザクションマネージャーが予期しないエラー条件を検出した場合にスローされます。
getStatus
int getStatus() throws SystemExceptionターゲット Transaction オブジェクトに関連付けられたトランザクションのステータスを取得します。- 戻り値:
- トランザクションのステータス。トランザクションがターゲットオブジェクトに関連付けられていない場合、このメソッドは Status.NoTransaction 値を返します。
- 例外:
SystemException- トランザクションマネージャーが予期しないエラー条件を検出した場合にスローされます。
registerSynchronization
void registerSynchronization(Synchronization sync) throws RollbackException, IllegalStateExceptionSE, SystemException
現在ターゲットオブジェクトに関連付けられているトランザクションの同期オブジェクトを登録します。トランザクションマネージャーは、2 フェーズトランザクションコミットプロセスを開始する前に beforeCompletion メソッドを呼び出します。トランザクションが完了すると、トランザクションマネージャーは afterCompletion メソッドを呼び出します。- パラメーター:
sync- ターゲットオブジェクトに関連付けられたトランザクションの同期オブジェクト。- 例外:
RollbackException- トランザクションがロールバックのみにマークされていることを示すためにスローされます。IllegalStateExceptionSE- ターゲットオブジェクトのトランザクションが準備済み状態であるか、トランザクションが非アクティブである場合にスローされます。SystemException- トランザクションマネージャーが予期しないエラー条件を検出した場合にスローされます。
rollback
void rollback() throws IllegalStateExceptionSE, SystemExceptionこの Transaction オブジェクトが表すトランザクションをロールバックします。- 例外:
IllegalStateExceptionSE- ターゲットオブジェクトのトランザクションが準備済み状態であるか、トランザクションが非アクティブである場合にスローされます。SystemException- トランザクションマネージャーが予期しないエラー条件を検出した場合にスローされます。
setRollbackOnly
void setRollbackOnly() throws IllegalStateExceptionSE, SystemExceptionトランザクションの考えられる唯一の結果がトランザクションのロールバックになるように、ターゲットオブジェクトに関連付けられたトランザクションを変更します。- 例外:
IllegalStateExceptionSE- ターゲットオブジェクトがどのトランザクションにも関連付けられていない場合にスローされます。SystemException- トランザクションマネージャーが予期しないエラー条件を検出した場合にスローされます。