Как обработать исключение глобально?

Ответ

@RestControllerAdvice + @ExceptionHandler. Внутри класса — просто @ExceptionHandler на методе контроллера.

Разбор: Глобальная обработка делается классом с @RestControllerAdvice (или @ControllerAdvice) и методами @ExceptionHandler внутри. HandlerExceptionResolver — низкоуровневый механизм, неудобный для REST и возвращающий ModelAndView, а не тело ответа; @Configuration и @Service не сканируются как advice — методы @ExceptionHandler в них работают только при @ControllerAdvice, само наследование ResponseEntityExceptionHandler без этой аннотации глобально ничего не перехватит.

Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.

Заказать гайд Пройти тест
новые гайды и свежие вопросы с собесов — первыми в Telegram Смотреть гайды Подписаться