Я пробовал это:
Код: Выделить всё
@Order(Ordered.HIGHEST_PRECEDENCE)
@ControllerAdvice
public class RestErrorResponseExceptionHandler extends ResponseEntityExceptionHandler {
@Override
protected ResponseEntity handleExceptionInternal(
Exception ex, Object body, HttpHeaders headers, HttpStatus status, WebRequest request) {
super.handleExceptionInternal(ex, body, headers, status, request);
return ResponseEntity.status(status).body(Error.from(status));
}
}
Если я определяю собственный метод с помощью @ExceptionHandler< /code> в моих остальных контроллерах или расширить что-то, что имеет @ExceptionHandler, тогда все работает хорошо, но это приводит к плохому дизайну.
Насколько я понимаю, Spring сначала попытается найти в контроллере методы обработки исключений, а затем проверит наличие зарегистрированных обработчиков.
Я пытаюсь проверить поведение с помощью WebMvcTest, и ответы, которые я получаю, не являются ожидаемыми объектами Error.
Я что-то упускаю?
Подробнее здесь: https://stackoverflow.com/questions/505 ... n-handling