Аспект @Around
охватывает весь ваш метод.Если вы не сгенерируете свое исключение в этом методе, оно будет использовано, и обработчик исключений не сработает.
Это означает, что вы не должны перехватывать какие-либо исключения в своем аспекте.Если вы пытаетесь записать продолжительность метода, вы должны сделать это в блоке finally
:
@Around("execution(* com.xyz.example.MyController.*(..))")
public void aroundCalls(ProceedingJoinPoint joinPoint) throws Throwable {
logger.info("Before call");
try {
// This will throw "Throwable", so you'll have to add it to your method
joinPoint.proceed();
} finally {
logger.info("After call");
}
}