RestController에서 @ResponseBody로 DTO에 바로 맵핑시킬때 json의 body에서 boolean 타입의 is~~~ 에서 is가 사라짐으로 인해서 계속 테스트가 실패하였다.
위의 사진과 같이 Dto가 HttpMessageConverter를 통해 변환될 경우 이름이 그대로 나오길 바랬지만 is가 생략이 되어 나왔다
일반적인 해결방법으로는 @JsonProperty("{json에서 보였으면 하는 이름}") 을 사용하여 해결하는 방법이 있는데
위 사진과 같이 shown은 그냥 존재하고 내가 설정한 이름은 또 따로 추가가 되었다.
그리하여 최종적으로 해결방법을 찾은 것은 Wrapper 타입의 boolean을 사용하는 것이다.
JsonMessageConverter가 어떠한 연유인지는 모르겠지만 is라는 이름을 제하고 자동으로 이름을 변경하는 것을 알아버렸다.
나중에 시간이 나면 why까지 알아보는걸로...
반응형
'에러 혼내주기 > Spring' 카테고리의 다른 글
[Spring] JPA entity 설정시 SQL Error: 1064, SQLState: 42000 에러 (0) | 2023.01.05 |
---|---|
[Spring] Spring security + @WebMvcTest 403에러 발생 (0) | 2022.12.11 |