私は問題があります。
つまり、Spring aop を使用して例外を処理しています。それらのいくつかは、外部ベンダーによって破損したデータが配信された場合にスローされる私の例外です。特定のタイプを指す側面でそれらを処理します。このような。
@AfterThrowing(
pointcut =
"execution(*myClass.myDataProcessingMethod(..))",
throwing = "ex"
)
public void myAspectMethod(MyException ex) {
...
}
しかし、データ処理ジョブで何か問題が発生し、それがデータの欠陥ではなくロジックのバグである場合は、インスタンスで通知されたいと考えています。だから私は第二の側面を持っています。
@AfterThrowing(
pointcut =
"execution(*myClass.myDataProcessingMethod(..))",
throwing = "ex"
)
public void myAspectMethod(Exception ex) {
extraInformingService.informAdamAtOnce("shitjustgotreal");
}
ただし、 MyException がスローされると、 MyException は Exception のインスタンスであるため、両方の側面が発生します。
MyException を指すメソッドのみを起動する方法はありますか?