Как стать автором
Обновить

Комментарии 8

В production throw new BusinessException в Example5Controller, будет вызываться из сервисного уровня?

В реальном приложении да

НЛО прилетело и опубликовало эту надпись здесь

"Начиная со Spring 3.2" На самом деле ControllerAdvice актуален и в последних версиях спринга, или вы знаете что-то поинтересней?

Отличная статья, все по просто и понятно! Как раз пригодиться в новом проекте.

Можно также сделать аннотацию @ResponseStatus у класса исключения.
Иногда бывает удобно, когда хочется использовать и ловить разные типы исключений, а не только ResponseStatusException (который еще и не очень красиво получается кидать из глубин приложения)

Такой пример в статье тоже есть :)
@ResponseStatus(value = HttpStatus.INTERNAL_SERVER_ERROR)
public class ServiceException extends Exception {

    public ServiceException(String message) {
        super(message);
    }

}

Если не ошибаюсь, включить отображение текста ошибки из эксшепшена можно в application.properties так: server.error.include-message=always.

Эта опция выключена по умолчанию, начиная с версии 2.3.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории