Câu trả lời này có thể hơi muộn đối với OP, nhưng tôi vừa gặp phải vấn đề tương tự hôm nay và tìm ra giải pháp ...
Để thiết lập nó theo chương trình, bạn cần gọi MongoMappingConverter.afterPropertiesSet()
trước khi bạn sử dụng nó. Tôi nhận ra điều này khi đọc mã cho MongoTemplate.getDefaultMongoConverter(MongoDbFactory)
.
Đây là một ví dụ:
MappingMongoConverter converter = new MappingMongoConverter(mongoDbFactory, context);
converter.setTypeMapper(mapper);
converter.setCustomConversions(new CustomConversions(
Arrays.asList(
new TimeZoneReadConverter(),
new TimeZoneWriteConverter()
)
));
converter.afterPropertiesSet();
MongoTemplate template = new MongoTemplate(mongoDbFactory, converter);