パッケージ jakarta.interceptor

アノテーション型 AroundInvoke


  • @TargetSE(METHODSE)
    @RetentionSE(RUNTIMESE)
    public @interface AroundInvoke
    ビジネスメソッドに割り込むインターセプターメソッドを定義します。このメソッドは、型 InvocationContext の単一のパラメーターを受け取り、戻り値の型 ObjectSE を持っている必要があります。メソッドは、抽象、最終、静的として宣言してはなりません。
     @AroundInvoke
     public Object intercept(InvocationContext ctx) throws Exception { ... }
     

    AroundInvoke メソッドは、インターセプタークラス、インターセプタークラスのスーパークラス、ターゲットクラス、/ またはターゲットクラスのスーパークラスで宣言できます。

    特定のクラスは、複数の AroundInvoke メソッドを宣言してはなりません。

    AroundInvoke メソッドは、インターセプトしているメソッドが呼び出すことができる任意のコンポーネントまたはリソースを呼び出すことができます。

    一般に、AroundInvoke メソッドの呼び出しは、それらが介入しているメソッドと同じトランザクションおよびセキュリティコンテキスト内で発生します。

    AroundInvoke メソッドは、介入しているメソッドの throws 句で許可されている例外をスローする場合があります。InvocationContext.proceed() を呼び出すことで、例外をキャッチして抑制し、回復することができます。

    導入:
    Jakarta Interceptors 1.0