Пользовательский @ControllerAdvice в Spring для обработки исключенийJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Пользовательский @ControllerAdvice в Spring для обработки исключений

Сообщение Anonymous »

Я пытаюсь сопоставить исключения из моих контроллеров отдыха с ответами, имеющими тело, и сделать это в центральном месте.

Я пробовал это:

Код: Выделить всё

@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
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»