Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Infinispan事务-无法从Spring4获取TransactionManager_Java_Spring_Hibernate_Infinispan - Fatal编程技术网

Java Infinispan事务-无法从Spring4获取TransactionManager

Java Infinispan事务-无法从Spring4获取TransactionManager,java,spring,hibernate,infinispan,Java,Spring,Hibernate,Infinispan,我需要将Infinispan配置为Spring项目的缓存提供程序。这是因为他的交易功能。问题在于Spring使用PlatformTransactionManager,Infinispan需要javax.transaction.TransactionManager。 是否可以使用Spring提供的平台TransactionManager配置Infinispan TransactionManager Lookup 我用的是TransactionManager。 Infinispan的版本是7.2.3

我需要将Infinispan配置为Spring项目的缓存提供程序。这是因为他的交易功能。问题在于Spring使用PlatformTransactionManager,Infinispan需要javax.transaction.TransactionManager。 是否可以使用Spring提供的平台TransactionManager配置Infinispan TransactionManager Lookup

我用的是TransactionManager。
Infinispan的版本是7.2.3.Final,Spring4。

看起来JpaTransactionManager只能绑定一个目标,我需要JtaTransactionManager。希望可以在Spring的平台TransactionManager下绑定它。

看起来JpaTransactionManager只能绑定一个目标,我需要JtaTransactionManager。希望可以在Spring的平台TransactionManager下绑定它。

Infinispan返回一个JTA TransactionManager实现。但是,您使用的是与JTA无关的

因此,至少有两种方法可以解决这个问题:

  • 您可以在PlatformTransactionManager和JTA TransactionManager之间开发和适配器,并通过TransactionManager lookup返回它
  • 更好的方法是将Spring配置为在实体中使用JTA(您可能会在internet上找到许多示例,但这里的关键点是您需要一些JTA实现,例如)。然后Infinispan应该自动找到JTA事务管理器(或者您可以使用TransactionManagerLookup手动指定)
    • Infinispan返回JTA TransactionManager实现。但是,您使用的是与JTA无关的

      因此,至少有两种方法可以解决这个问题:

      • 您可以在PlatformTransactionManager和JTA TransactionManager之间开发和适配器,并通过TransactionManager lookup返回它
      • 更好的方法是将Spring配置为在实体中使用JTA(您可能会在internet上找到许多示例,但这里的关键点是您需要一些JTA实现,例如)。然后Infinispan应该自动找到JTA事务管理器(或者您可以使用TransactionManagerLookup手动指定)