0

我基于 spring、jpa 和 neo4j 配置了我的应用程序,以使用 JOTM 进行事务管理,配置如下。

<context:annotation-config />
<bean id="jotm" class="org.springframework.data.neo4j.transaction.JotmFactoryBean"/>
 <bean id="transactionManager" class="org.springframework.transaction.jta.JtaTransactionManager">

<bean id="graphDatabaseService" class="org.neo4j.kernel.EmbeddedGraphDatabase"
    destroy-method="shutdown" scope="singleton">
    <constructor-arg index="0" value="${neo4j.dblocation}" />
    <constructor-arg index="1">
        <map>
            <entry key="TXMANAGER_IMPLEMENTATION" value="spring-jta" />
        </map>
    </constructor-arg>
</bean> 

<neo4j:config graphDatabaseService="graphDatabaseService" /> 
<tx:annotation-driven mode="aspectj"  transaction-manager="transactionManager" />

但我面临着 org.springframework.transaction.jta.JtaTransactionManager 类的两个实例:jtaTransactionManager、neo4jTransactionManager。

我的日志:

使用 JTA UserTransaction:org.objectweb.jotm.Current@81e88 使用 JTA TransactionManager:org.objectweb.jotm.Current@81e88 使用 JTA UserTransaction:org.neo4j.kernel.impl.transaction.UserTransactionImpl@6cc760 使用 JTA TransactionManager:org.neo4j .kernel.impl.transaction.SpringTransactionManager@195ab57

我的配置是否正确,应该使用哪一个?

谢谢

4

0 回答 0