我使用Spring 4.1.6.RELEASE和Spring Boot 1.2.3.RELEASE。 现在,我无法顺利地从Neo4j 2.1.7和SDN 3.2.2.RELEASE转移到Neo4j 2.2.0和SDN 3.3.0.RELEASE
首先,Neo4jHelper
课程缺席......那么应该使用什么呢?
此外,我的测试崩溃时有以下例外情况:
org.springframework.dao.InvalidDataAccessApiUsageException: nested exception is org.neo4j.graphdb.NotInTransactionException
at org.springframework.data.neo4j.support.Neo4jExceptionTranslator.translateExceptionIfPossible(Neo4jExceptionTranslator.java:51)
at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:59)
at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:213)
at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:147)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)
但是在以前的版本中,一切正常(我的DAO和服务都注明了@Transactional
)。
如何在我的Spring Boot应用程序中为Neo4j配置适当的TX管理器?
现在使用NullTransactionManager
,我认为这是问题的原因:
2015-04-03 11:40:36 [main] INFO o.s.c.a.AnnotationConfigApplicationContext - Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@12db5286: startup date [Fri Apr 03 11:40:36 EEST 2015]; root of context hierarchy
2015-04-03 11:40:37 [main] INFO o.s.b.f.a.AutowiredAnnotationBeanPostProcessor - JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2015-04-03 11:40:38 [main] INFO o.s.t.jta.JtaTransactionManager - Using JTA UserTransaction: org.springframework.transaction.jta.UserTransactionAdapter@5909b7c2
2015-04-03 11:40:38 [main] INFO o.s.t.jta.JtaTransactionManager - Using JTA TransactionManager: org.springframework.data.neo4j.config.NullTransactionManager@16bc4d92
我做错了什么?
答案 0 :(得分:5)
这项工作正在进行中,我已将其分配到分支机构,但由于Neo4j 2.2更改了许多内部API,因此尚未完成。
请在接下来的一周左右继续关注。