org.seasar.framework.ejb.tx
クラス EJB3RequiresNewInterceptor
java.lang.Object
org.seasar.extension.tx.AbstractTxInterceptor
org.seasar.framework.ejb.tx.AbstractEJB3TxInterceptor
org.seasar.framework.ejb.tx.EJB3RequiresNewInterceptor
- すべての実装されたインタフェース:
- Advice, Interceptor, MethodInterceptor
public class EJB3RequiresNewInterceptor
- extends AbstractEJB3TxInterceptor
新しいトランザクションを要求するメソッドのためのインターセプタです。
このインターセプタが適用されたメソッドが呼び出された際に、新しいトランザクションが開始されます。 メソッドが終了 (例外をスローした場合も)
した後、開始したトランザクションは完了 (コミットまたはロールバック) されます。
メソッドが呼び出された際に、既にトランザクションが開始されていた場合、そのトランザクションは中断されます。
中断されたトランザクションは、メソッドが終了した後に再開されます。
- 作成者:
- koichik
クラス org.seasar.extension.tx.AbstractTxInterceptor から継承されたメソッド |
addCommitRule, addRollbackRule, begin, complete, end, getTransactionManager, getUserTransaction, hasTransaction, resume, rollback, setTransactionManager, setUserTransaction, suspend |
クラス java.lang.Object から継承されたメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
EJB3RequiresNewInterceptor
public EJB3RequiresNewInterceptor()
- インスタンスを構築します。
invoke
public Object invoke(MethodInvocation invocation)
throws Throwable
- 例外:
Throwable
suspendIfNecessary
protected Transaction suspendIfNecessary()
throws SystemException
- トランザクションが開始されていれば中断します。
- 戻り値:
- 中断されたトランザクション
- 例外:
SystemException
- トランザクションマネージャで例外が発生した場合にスローされます
Copyright © 2005-2007 The Seasar Foundation. All Rights Reserved.