Получение сообщения об исключении отдыха - PullRequest
0 голосов
/ 11 октября 2018

У меня есть базовое приложение SpringBoot 2.0.5.RELEASE.Используя Spring Initializer, JPA, встроенный Tomcat, шаблонизатор Thymeleaf и пакет в качестве исполняемого файла JAR.

Я создал этот ExceptionHandler

@RestControllerAdvice
public class RestResponseEntityExceptionHandler extends ResponseEntityExceptionHandler {


    private static final Logger LOG = LoggerFactory.getLogger   (RestResponseEntityExceptionHandler.class);

    public RestResponseEntityExceptionHandler() {
        super();
    }


    @ExceptionHandler({ WorkFlowException.class })
    public ResponseEntity<Object> handleInternalExceptions(final RuntimeException ex, final WebRequest request) {   
        LOG.error("InternalExceptions Code", ex);
        return handleExceptionInternal(ex, ex.getMessage(), new HttpHeaders(), HttpStatus.FORBIDDEN, request);

    }
}

в RestController. Я выбрасываю это исключение:

new WorkFlowException("NOT_SIGNED");

в клиенте у меня есть этот код:

ResponseEntity<String> response = restTemplate
              .exchange("http://85.30.243.61:1233/theApp/api/v1/users/sign", HttpMethod.POST, entity, String.class);

Когда я делаю System.out.println(response.getStatusCode());

У меня есть это сообщение в консоли:

Exception in thread "main" org.springframework.web.client.HttpClientErrorException: 403 null
    at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:94)
    at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:79)
    at org.springframework.web.client.ResponseErrorHandler.handleError(ResponseErrorHandler.java:63)
    at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:730)
    at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:688)
    at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:644)
    at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:564)

и мне интересно, есть ли способ извлечь сообщение Exception NOT_SIGNED

...