HttpMessageNotReadableException: JSON parse error: Cannot construct instance of `org.study.boardProject.dto.CommentDto$Patch` (although at least one Creator exists): cannot deserialize from Object value (no delegate- or property-based Creator); nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot construct instance of `org.study.boardProject.dto.CommentDto$Patch` (although at least one Creator exists): cannot deserialize from Object value (no delegate- or property-based Creator)<EOL> at [Source: (org.springframework.util.StreamUtils$NonClosingInputStream); line: 2, column: 5]]
스프링 스터디를 하면서 댓글 구현을 하는 과정에서 발생하였다.
댓글 수정을 하는데, 계속해서 역직렬화가 안된다는 에러가 떴다.
그래서 찾아보았는데, 나와 상황이 다른 사람들의 케이스만 존재했다.
그때 하나의 기억이 떠올랐다.
프리 프로젝트를 할 때, 팀원 분께서 DTO의 필드가 하나면 에러가 발생한다고 했던 기억이었다.
그 당시의 코드를 찾아보고, @JsonCreator와 @JsonProperty를 붙여주었더니 해결이 되었다!
public class CommentDto {
...
@Getter
public static class Patch {
private String content;
@JsonCreator
public Patch(@JsonProperty("content") String content) {
this.content = content;
}
}
...
}
'에러 기록' 카테고리의 다른 글
[에러 기록] does not have a commit checked out (1) | 2023.12.05 |
---|---|
[에러 기록] HttpClientErrorException : 401 Unauthorized: [no body] (0) | 2022.12.20 |
댓글