개발/JAVA
JSON parse error : Cannot deserialize instance of 'java.util.ArrayList' out of START_OBJECT token
쩨이엠
2020. 4. 30. 10:07
728x90
반응형
| MismatchedInputException: Cannot deserialize instance of 'java.util.ArrayList' out of START_OBJECT token
curl 명령어를 날렸는데 Jackson MismatchedInputException 에러가 떨어졌다
converting 에러인 것 같아서 확인해보았다
넣으려는 데이터
'{"reqId":"1588126260","reqTime":1588126260,"payloads":{"collTime":1588126260,"data":[{"property":"WP080","value":"false"}]}}'
받을 객체
@Getter
@Setter
public class Wrapper {
private String reqId;
private long reqTime;
private List<Payload> payloads = new ArrayList<>();
@Getter
@Setter
public static class Payload{
private long collTime;
private List<PayloadData> data = new ArrayList<>();
}
@Getter
@Setter
public static class PayloadData{
private String property;
private String value;
}
}
이 때 객체에서 payloads 는 List로 받아야 하는데 payloads가 오브젝트여서 생긴 이슈였다
넣으려는 데이터에서 payloads를 []로 감싸주거나
받을 객체를 private Payload payloads 로 바꿔주면 데이터를 정상적으로 받을 수 있다
데이터와 객체를 확인할 것
728x90
반응형