我正在使用 Micronaut 和 MongoDB 创建一个新的应用程序。关于我的一些数据库对象,我不得不陷入僵局。
我有一个包含枚举字段的对象,我需要将其转换为可以保存的值(我打算将其作为字符串保存)。
根据我的理解和收到的错误消息,我需要创建一个新的编解码器来处理这个问题(类似于 JPA 转换器)。虽然我找到了说明这一点的示例,但我对应该如何为 MongoClient 注册转换器感到有点困惑。
我使用的是框架和相应 MongoClient 的最新 Micronaut 版本。
以下是我得到的例外情况供参考:
org.bson.codecs.configuration.CodecConfigurationException: Can't find a codec for class fts.marketing.models.CampaignEmailStatus.
at org.bson.codecs.configuration.CodecCache.getOrThrow(CodecCache.java:46)
at org.bson.codecs.configuration.ProvidersCodecRegistry.get(ProvidersCodecRegistry.java:63)
at org.bson.codecs.configuration.ProvidersCodecRegistry.get(ProvidersCodecRegistry.java:37)
at com.mongodb.client.model.BuildersHelper.encodeValue(BuildersHelper.java:37)
at com.mongodb.client.model.Filters$SimpleEncodingFilter.toBsonDocument(Filters.java:1109)
at com.mongodb.client.model.Filters$AndFilter.toBsonDocument(Filters.java:946)
at com.mongodb.internal.operation.Operations.createFindOperation(Operations.java:142)
at com.mongodb.internal.operation.Operations.find(Operations.java:130)
at com.mongodb.internal.operation.AsyncOperations.find(AsyncOperations.java:85)
at com.mongodb.async.client.FindIterableImpl.createFindOperation(FindIterableImpl.java:229)
at com.mongodb.async.client.FindIterableImpl.asAsyncReadOperation(FindIterableImpl.java:225)
at com.mongodb.async.client.MongoIterableImpl.batchCursor(MongoIterableImpl.java:161)
互换的青春
Cats萌萌
相关分类