Java Spring@Transactional breaking嵌入式和独立MongoDB应用程序

Java Spring@Transactional breaking嵌入式和独立MongoDB应用程序,java,spring,mongodb,spring-boot,spring-data,Java,Spring,Mongodb,Spring Boot,Spring Data,我正在使用Spring数据MongoDB 2.2.1.版本进行MongoDB访问。和flapdoodleembeddedmongo2.2.0作为嵌入式MongoDB进行测试。此设置工作正常。但最近,我增加了对Spring事务的支持。而且因为MongoDB只支持副本集上的事务。我已经在我的机器上本地创建了一个副本集,并测试了事务场景。到现在为止一切都很好。但现在,当我运行单元测试时,添加到服务方法中的@Transactional注释正在以以下错误破坏应用程序,因为嵌入式MongoDB不是副本集 c

我正在使用
Spring数据MongoDB 2.2.1.版本
进行MongoDB访问。和
flapdoodleembeddedmongo2.2.0
作为嵌入式MongoDB进行测试。此设置工作正常。但最近,我增加了对Spring事务的支持。而且因为MongoDB只支持副本集上的事务。我已经在我的机器上本地创建了一个副本集,并测试了事务场景。到现在为止一切都很好。但现在,当我运行单元测试时,添加到服务方法中的
@Transactional
注释正在以以下错误破坏应用程序,因为嵌入式MongoDB不是副本集

com.mongodb.MongoClientException:此客户端所连接的mongodb群集不支持会话

我的问题是如何配置我的应用程序,以便在使用嵌入式或独立MongoDB时,
@Transactional
功能不会破坏我的应用程序


非常感谢您的建议。谢谢

可以运行单节点副本集。您可以在测试中考虑这一点,以便测试环境更类似于您的生产环境。

可以运行1节点副本集。您可以在测试中考虑这一点,以便测试环境更类似于您的生产环境。

是否使用更新后的API连接到MunGDB?从包
com.mongodb.client.MongoClient
?@Nikolas不,我想。我正在使用
mongortransactionmanager
。我读过,但找不到任何样品。它对嵌入式和独立MongoDB的事务支持有何帮助?您会提供连接到MongoDB的代码吗?我们可能会发现一些问题。@Nikolas使用Spring数据
MongoOperations
连接到MongoDB。@MeenaChaudhary我也遇到了这个错误,您是否找到了解决方法而没有更改太多代码?您是否使用更新的API连接到MongoDB?从包
com.mongodb.client.MongoClient
?@Nikolas不,我想。我正在使用
mongortransactionmanager
。我读过,但找不到任何样品。它对嵌入式和独立MongoDB的事务支持有何帮助?您会提供连接到MongoDB的代码吗?我们可能会发现一些问题。@Nikolas使用Spring数据
MongoOperations
连接到MongoDB。@MeenaChaudhary我也遇到了这个错误,您是否找到了解决方法而没有更改太多代码?