У меня есть следующий класс, который я использую в качестве полезной нагрузки запроса:
public class SampleRequest {
private String fromDate;
private String toDate;
// Getters and setters removed for brevity.
}
Я пытаюсь использовать его с этим ресурсом ниже (просто пытаюсь распечатать его на экране, чтобы увидеть, что происходит):
@PostMapping("/getBySignatureOne")
public ResponseEntity<?> getRequestInfo(@Valid @RequestBody SampleRequest signatureOneRequest) {
System.out.println(signatureOneRequest.getToDate);
System.out.println(signatureOneRequest.getFromDate);
}
Это запрос JSON, который я отправляю:
{
"fromDate":"2019-03-09",
"toDate":"2019-03-10"
}
Это ошибка, которую я получаю:
Resolved [org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Cannot construct instance of `com.test.app.payload.SampleRequest` (although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value ('fromDate'); nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot construct instance of `com.test.app.payload.SampleRequest` (although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value ('fromDate')
at [Source: (PushbackInputStream); line: 1, column: 2]]
Я бы хотел знать, что здесь не так, я подозреваю, что это проблема с конструкторами, или что я где-то пропускаю какие-то аннотации, но я честно не уверен, где я ошибся.