https://github.com/OPGG-HACKTHON/MusicWard-Server/issues/196
com.fasterxml.jackson.databind.exc.InvalidDefinitionException:
Cannot construct instance of
`io.github.opgg.music_ward_server.dto.ranking.response.RankingMainResponse`
(no Creators, like default constructor, exist):
cannot deserialize from Object value (no delegate- or property-based Creator)
InvalidDefinitionException
JSON을 파싱한 결과를 전달할 적절한 생성자를 찾지 못했을 때 발생하는 에러이다.
Redis에서 캐시된 데이터를 다시 보내 줘야 할 경우, 내부적으로 해당 데이터를 재구성하는데, 이때 생성자가 사용된다. 하지만 해당 생성자가 없기 때문에 위와 같은 예외를 던진다.
@Getter
@NoArgsConstructor // 기본 생성자 추가
@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class)
public class RankingMainResponse {
...
}
기본 생성자를 추가하여 해결하였다.