У меня есть класс, который выглядит следующим образом:
class A {
Map<String, LocalDate> mapLocalDate;
Map<String, String> simpleMap;
String name;
}
Этот класс должен быть преобразован в Map , где ключ - это имя атрибута, а значение - значение атрибута. Для этого я использую Jackson ObjectMapper:
final ObjectMapper objectMapper = new ObjectMapper();
objectMapper.registerModule(new Jdk8Module());
objectMapper.registerModules(new JavaTimeModule());
objectMapper.configure(DeserializationFeature.READ_DATE_TIMESTAMPS_AS_NANOSECONDS, false);
objectMapper.configure(SerializationFeature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS, false);
objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
final Map<String, Object> fieldMap = this.objectMapper.convertValue(entityA, Map.class)
. Этот подход прекрасно работает для простых полей, таких как: "simpleMap", "name". Но не для одного со значением LocalDate (имя поля: "mapLocalDate") Преобразование выдает ошибку ниже:
java.util.Date не может бытьприведение к java.time.LocalDate
Может быть, кто-то сталкивался с подобной проблемой и мог бы подсказать, что не так в конфигурациях?