AspectJ не работает для класса, который реализует AsyncUncaughtExceptionHandler - PullRequest
0 голосов
/ 19 февраля 2020

У меня есть следующий класс:

@Component
public class AsyncExceptionHandler implements AsyncUncaughtExceptionHandler {

    @Override
    public void handleUncaughtException(Throwable ex, Method method, Object... params) {
        System.out.println("Error handling!"); 
    }
}

И у меня есть следующий аспект:

@Before("execution(* org.springframework.aop.interceptor.AsyncUncaughtExceptionHandler.handleUncaughtException(java.lang.Throwable, java.lang.reflect.Method, java.lang.Object...)) && "
        + "args(ex, method, params) && target(myapplication.exception.handler.AsyncExceptionHandler)")
public void asyncExceptionHandlerHandleUncaughtExceptionBefore(Throwable ex, Method method, Object... params) {
    System.out.println("Aspect OK!"); 
}

Мне нужен этот аспект из-за стандартного способа входа в мое приложение. Сегодня этот класс аспектов имеет много аспектов, которые работают! Только этот аспект не работает!

Вопрос:

  1. Я думаю, невозможно перехватить реализацию AsyncUncaughtExceptionHandler (перехватчик). В том, что?
  2. Что-то, связанное с варагсом params?
...