MappingJackson2MessageConverter의 ObjectMapper 구성
나는 줄곧 이 잘못을 저질렀다
Caused by: org.springframework.messaging.converter.MessageConversionException: Could not read JSON: Cannot construct instance of `java.time.ZonedDateTime` (no Creators, like default construct, exist): no String-argument constructor/factory method to deserialize from String value ('2020-09-07T18:02:51.099+0000')
나는 해결 방안이 다시 쓰기ZonedDateTime
로 모듈ObjectMapper
을 등록하여 메시지를 반서열화할 수 있다고 생각한다.이 해결 방안은 정확하지만, 여전히 오류를 해결하지 못했다.
나는 Spring Cloud을 사용하여 대기열에서 메시지를 받기 때문에 받은 메시지는
JavaTimeModule
처리된다는 것을 깨달았다.https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/jms/support/converter/MappingJackson2MessageConverter.html
솔루션은 구성
MappingJackson2MessageConverter
의 개체 매핑기MappingJackson2MessageConverter
에 대해 1개ObjectMapper
를 확보하고 추가 구성을 설정하는 것입니다.@Bean
public MappingJackson2MessageConverter mappingJackson2MessageConverter(ObjectMapper objectMapper) {
MappingJackson2MessageConverter jacksonMessageConverter = new MappingJackson2MessageConverter();
jacksonMessageConverter.setObjectMapper(objectMapper);
jacksonMessageConverter.setSerializedPayloadClass(String.class);
jacksonMessageConverter.setStrictContentTypeMatch(true);
return jacksonMessageConverter;
}
이 문장이 너에게 도움이 되었으면 좋겠어!
Reference
이 문제에 관하여(MappingJackson2MessageConverter의 ObjectMapper 구성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/msgallosa/configuring-mappingjackson2messageconverter-s-objectmapper-170k텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)