ResponseEntityExceptionHandler отключает форматированное тело ответа при ошибке проверки в Spring Boot - PullRequest
0 голосов
/ 21 февраля 2019

В моем сервисе Spring Boot HTTP Rest GET У меня есть это свойство в теле:

@NotNull
@Size(min = 2)
private List<Dto> dtos = new ArrayList<Dto>();

Когда в списке только одна запись, я получаю эту ошибку:

{
  "timestamp": "2019-02-21T14:05:41.968+0000",
  "status": 400,
  "error": "Bad Request",
  "errors": [
    {
      "codes": [
        "Size.baseDto.dtos",
        "Size.dtos",
        "Size.java.util.List",
        "Size"
      ],
      "arguments": [
        {
          "codes": [
            "baseDto.dtos",
            "dtos"
          ],
          "arguments": null,
          "defaultMessage": "dtos",
          "code": "dtos"
        },
        2147483647,
        2
      ],
      "defaultMessage": "has to be between 2 and 2147483647",
      "objectName": "baseDto",
      "field": "dtos",
      "rejectedValue": [
        {
          "coordinates": {
            "latitude": 0.0,
            "longitude": 0.0
          }
        }
      ],
      "bindingFailure": false,
      "code": "Size"
    }
  ],
  "message": "Validation failed for object='baseDto'. Error count: 1",
  "path": "/api/v1/transports"
}

Однако, как только я добавлю

@ControllerAdvice
public class ExceptionMapper extends ResponseEntityExceptionHandler {

в проект, тело ошибки больше не будет возвращено.Даже если ExceptionMapper не имеет реализации, тело не возвращается.

Как сохранить проверку, даже если я использую пользовательский ResponseEntityExceptionHandler?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...