mr_garther
@mr_garther
Python Full-Stack

Как передать error message в http запросе?

Привет!
У меня есть созданный мною exception:
@ResponseStatus(HttpStatus.CONFLICT)
public class UserAlreadyExistException extends RuntimeException{

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

Но когда я кидаю его внутри запроса:
if (userService.findByEmail(email) != null) {
    throw new UserAlreadyExistException("User with this email already exist!");
}

Сообщение, видимо, не сохраняется, потому как внутри response оно равно null:
MockHttpServletResponse:
           Status = 409
    Error message = null


Подскажите, как исправить? Или, как мне лучше передать exception вместе с сообщением? Это важно, т.к. от содержимого сообщения зависит реакция клиента.
  • Вопрос задан
  • 153 просмотра
Решения вопроса 1
Ваня Петило используйте

throw new ResponseStatusException(HttpStatus.NOT_FOUND /* 404 */, "my message", new Exception(/* еще детали о том  что случ лось */));

https://docs.spring.io/spring/docs/5.0.1.RELEASE/j...
(потребуется видимо спринг 5 или спрбут spring-boot-starter-paren 2.1.2,RELEASE)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы