Я зарегистрировал набор Mongo преобразователей (включая Jsr310Converters
), но он не преобразует LocalDate
в Date
(поскольку canConvertFromLocalDateToDate равно false
)
@Configuration
public class MongoConfig {
@Autowired
MongoDbFactory mongoDbFactory;
@Bean
public MongoTemplate mongoTemplate() throws Exception {
MappingMongoConverter converter = new MappingMongoConverter(new DefaultDbRefResolver(mongoDbFactory),
new MongoMappingContext());
converter.setMapKeyDotReplacement("_");
List<Converter<?, ?>> converters = new ArrayList<Converter<?, ?>>();
converters.add(new GeoPointConverter());
converters.addAll(Jsr310Converters.getConvertersToRegister());
converters.addAll(JodaTimeConverters.getConvertersToRegister());
converters.addAll(ThreeTenBackPortConverters.getConvertersToRegister());
converter.setCustomConversions(new CustomConversions(CustomConversions.StoreConversions.NONE, converters));
//is FALSE !
boolean canConvertFromLocalDateToDate = converter.getConversionService().canConvert(LocalDate.class, Date.class);
MongoTemplate mongoTemplate = new MongoTemplate(mongoDbFactory, converter);
return mongoTemplate;
}
Когда я пытаюсь сохранить некоторые сущности с полями LocalDate
, я получаю исключение:
org.springframework.core.convert.ConverterNotFoundException: не найден конвертер, способный к конвертации из типа [java.time.LocalDate] для ввода [java.util.Date]