스프링 부트로 만든 어플리케이션을 테스트하던 도중에
cannot deserialize from Object value (no delegate- or property-based Creator) 라는 에러를 만났다.
api 를 호출하면서 어떤 Dto를 전달해주는데 그 사이에서 형식이 맞지 않았던 혹은 전달이 잘못되었든 어딘가에 문제가 생겼을 것이라고 추측하였다.
해결방법은 아주 간단하다. 아래는 내가 api로 전달하고자 했던 Dto 이다. (해결한 모습이다.)
위와 같이 Dto를 선언해줌으로써 해결할 수 있었다.
원래 해결되기 이전에는 @NoArgsConstructor 어노테이션이 없었다. 왜 이 어노테이션이 없으면 에러가 발생할까?
jackson library가 빈 생성자가 없는 모델을 생성할 줄 모르기 때문이라고 한다. 그렇기 때문에 @NoArgsConstructor 를 선언해줌으로써 해결할 수 있었다.
혹시 쓸 일이 있을 것 같아서 @AllArgsConstructor 도 선언해주었다. <- 이 부분은 선택이다.
아래 블로그에서 도움을 받았다. 감사합니다.
https://azurealstn.tistory.com/74
반응형
'Spring Framework > SpringBoot' 카테고리의 다른 글
[Springboot & Intellij] 9.png 나인패치 이미지란? 9Patch image (0) | 2022.04.08 |
---|---|
[SpringBoot] springboot에서 파이어베이스 연동하는법 (0) | 2022.04.07 |
[JPA사용중] TransactionRequiredException: Executing an update/delete query 에러 발생/ 트랜잭션이란? (0) | 2022.04.03 |
[SpringBoot] 퍼블릭 IPv4 주소로 ec2에 연결시 connection timed out 발생할 경우 (0) | 2022.04.02 |
[SpringBoot] hikaripool-1-Starting... stuck 문제 - hikaripool 에서 멈출 경우 대응방법 (4) | 2022.04.01 |