Не могу отправить тело в почтальон - PullRequest
0 голосов
/ 19 февраля 2020

У меня есть следующий код:

@PostMapping()
    public ResponseEntity<Object> postAccounts(
            @RequestHeader(value = "client-id", required = true) String clientId,
            @RequestHeader(value = "X-client-Global-Id", required = false) String clientGlobalID,
            @RequestHeader(value = "Authorization", required = true) String authorization,
            @Valid @RequestBody(required = true) String inputContract, @RequestBody(required = true)String nameInput, @RequestBody(required = true) Boolean state) {

        return new ResponseEntity<>(inputContract, HttpStatus.OK);
    }


При вызове этого метода почтальоном выдает ошибку.

trace": "org.springframework.http.converter.HttpMessageNotReadableException: I/O error while reading input message; nested exception is java.io.IOException: Stream closed\r\n\tat org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:217)\r\n\tat org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:158)\r\n\tat 

1 Ответ

3 голосов
/ 19 февраля 2020

Вы можете отправить только один RequestBody, если вы хотите отправить более одного свойства в теле. Вы должны создать объект

@PostMapping()
    public ResponseEntity<Object> postAccounts(
           //Other Headers...,
            @Valid @RequestBody(required = true) ObjectWithAllFields) {

        return new ResponseEntity<>(ObjectWithAllFields, HttpStatus.OK);
    }


РЕДАКТИРОВАТЬ 1

И, пожалуйста, отправьте свой след ошибки.

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