パッケージ org.springframework.aop

インターフェース ThrowsAdvice

すべてのスーパーインターフェース:
AdviceAfterAdvice

public interface ThrowsAdvice extends AfterAdvice
スローアドバイスのタグインターフェース。

メソッドはリフレクションによって呼び出されるため、このインターフェースにはメソッドはありません。クラスを実装するには、次の形式のメソッドを実装する必要があります。

void afterThrowing([Method, args, target], ThrowableSubclass);

有効なメソッドの例は次のとおりです。

public void afterThrowing(Exception ex)
public void afterThrowing(RemoteException)
public void afterThrowing(Method method, Object[] args, Object target, Exception ex)
public void afterThrowing(Method method, Object[] args, Object target, ServletException ex)
最初の 3 つの引数はオプションであり、AspectJ のスロー後のアドバイスのように、ジョインポイントに関する詳細情報が必要な場合にのみ役立ちます。

:throws-advice メソッド自体が例外をスローすると、元の例外がオーバーライドされます(つまり、ユーザーにスローされる例外が変更されます)。オーバーライドする例外は通常、RuntimeException です。これは、任意のメソッドシグネチャーと互換性があります。ただし、throws-advice メソッドがチェック例外をスローする場合、ターゲットメソッドの宣言された例外と一致する必要があるため、ある程度、特定のターゲットメソッドシグネチャーに結合されます。 ターゲットメソッドのシグネチャーと互換性のない宣言されていないチェック例外をスローしないでください。

作成者:
Rod Johnson, Juergen Hoeller
関連事項: