- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 MongoDbMessageStore
来存储传入的 AMQP 消息。消息具有标题,其键包含点。当一条消息即将持久化到MongoDB时,抛出异常:
org.springframework.data.mapping.model.MappingException: Map key lnu_ocr_core.ocr.rabbitmq_ver contains dots but no replacement was configured! Make sure map keys don't contain dots in the first place or configure an appropriate replacement!
at org.springframework.data.mongodb.core.convert.MappingMongoConverter.potentiallyEscapeMapKey(MappingMongoConverter.java:714)
at org.springframework.data.mongodb.core.convert.MappingMongoConverter.prepareMapKey(MappingMongoConverter.java:696)
at org.springframework.data.mongodb.core.convert.MappingMongoConverter.writeMapInternal(MappingMongoConverter.java:663)
at org.springframework.data.mongodb.core.convert.MappingMongoConverter.createMap(MappingMongoConverter.java:593)
at org.springframework.data.mongodb.core.convert.MappingMongoConverter.writePropertyInternal(MappingMongoConverter.java:478)
at org.springframework.data.mongodb.core.convert.MappingMongoConverter$3.doWithPersistentProperty(MappingMongoConverter.java:437)
at org.springframework.data.mongodb.core.convert.MappingMongoConverter$3.doWithPersistentProperty(MappingMongoConverter.java:425)
at org.springframework.data.mapping.model.BasicPersistentEntity.doWithProperties(BasicPersistentEntity.java:330)
at org.springframework.data.mongodb.core.convert.MappingMongoConverter.writeInternal(MappingMongoConverter.java:425)
at org.springframework.data.mongodb.core.convert.MappingMongoConverter.writeInternal(MappingMongoConverter.java:399)
at org.springframework.data.mongodb.core.convert.MappingMongoConverter.write(MappingMongoConverter.java:363)
at org.springframework.integration.mongodb.store.MongoDbMessageStore$MessageReadingMongoConverter.write(MongoDbMessageStore.java:530)
at org.springframework.integration.mongodb.store.MongoDbMessageStore$MessageReadingMongoConverter.write(MongoDbMessageStore.java:497)
at org.springframework.data.mongodb.core.MongoTemplate.toDbObject(MongoTemplate.java:873)
at org.springframework.data.mongodb.core.MongoTemplate.doInsert(MongoTemplate.java:855)
at org.springframework.data.mongodb.core.MongoTemplate.insert(MongoTemplate.java:799)
at org.springframework.integration.mongodb.store.MongoDbMessageStore.addMessageDocument(MongoDbMessageStore.java:228)
at org.springframework.integration.mongodb.store.MongoDbMessageStore.addMessagesToGroup(MongoDbMessageStore.java:303)
at org.springframework.integration.store.AbstractMessageGroupStore.addMessageToGroup(AbstractMessageGroupStore.java:209)
at org.springframework.integration.aggregator.AbstractCorrelatingMessageHandler.store(AbstractCorrelatingMessageHandler.java:621)
at org.springframework.integration.aggregator.AbstractCorrelatingMessageHandler.handleMessageInternal(AbstractCorrelatingMessageHandler.java:413)
at org.springframework.integration.handler.AbstractMessageHandler.handleMessage(AbstractMessageHandler.java:127)
...
我知道要解决这个问题,我必须在 MappingMongoConverter
上设置 mapKeyDotReplacement
。但是,MongoDbMessageStore
使用私有(private)的、内部创建和配置的 MongoDbMessageStore.MessageReadingMongoConverter
实例。有没有办法在那里设置 mapKeyDotReplacement
?
最佳答案
您必须放弃不方便的 MongoDbMessageStore
,转而使用 ConfigurableMongoDbMessageStore
。从语义上讲,它们是相同的,并且可以使用外部 MappingMongoConverter
进行配置:
public ConfigurableMongoDbMessageStore(MongoDbFactory mongoDbFactory, MappingMongoConverter mappingMongoConverter) {
关于java - 如何为 MongoDbMessageStore.MessageReadingMongoConverter 设置 mapKeyDotReplacement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47556156/
我正在使用 MongoDbMessageStore 来存储传入的 AMQP 消息。消息具有标题,其键包含点。当一条消息即将持久化到MongoDB时,抛出异常: org.springframework.
我正在使用 Spring Integration 4.3.11 和 Spring Data MongoDB 1.10.6。我有一个使用 MongoDbMessageStore 的消息聚合器。当消息序列
我是一名优秀的程序员,十分优秀!