Я пытаюсь создать модуль обработки исключений, который может использоваться несколькими модулями.Поэтому я создаю jar, в котором есть вся логика, связанная с обработкой исключений.Я пытаюсь добавить глобальный совет по контроллеру, который может перехватить исключение и генерировать ответ об ошибке. Проблема в том, что этот совет по контроллеру не вызывается.Он работает нормально, когда я пишу, объявляю этот совет контроллера в отдельных модулях.
Модуль исключений --ExceptionToResponseGenerator MainModule --RestController Это не работает
Модуль исключений
MainModule --RestController --ExceptionToResponseGenerator Это работает
Что я делаю не так?
package com.abc.cde.exceptionhandler.handler;
@ControllerAdvice
@Log
public class ExceptionToResponseGenerator extends ResponseEntityExceptionHandler {
@Override
protected ResponseEntity<Object> handleMethodArgumentNotValid(MethodArgumentNotValidException ex, HttpHeaders httpHeaders, HttpStatus httpStatus, WebRequest webRequest) {
return new ResponseEntity(new ErrorDetails(new Date(), "bad", "bad"), HttpStatus.BAD_REQUEST);
}
Основной класс
@Import(IncludeExceptionHandling.class)
@SpringBootApplication
public class MainApplication{
public static void main(String[] args) {
SpringApplication.run(MainApplication.class, args);
}
}
-----------
IncludeExceptionHandling
@Configuration
@EnableAspectJAutoProxy
public class IncludeExceptionHandling {
@Bean
public ExceptionLoggerPointcut notifyAspect() {
return new ExceptionLoggerPointcut();
}
}
ExceptionLoggerPointcut isОбертка исключение и сбросить его