无法移动到 Neo4j 2.2.0 和 Spring Data Neo4j 3.3。0.RELEASE

Can't move to Neo4j 2.2.0 and Spring Data Neo4j 3.3.0.RELEASE

我使用 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 class 不存在...那么应该用什么代替?

此外,我的测试崩溃,但出现以下异常:

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 引导应用程序中为 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

我做错了什么?

这项工作正在进行中,我在一个分支中有它,但尚未完成,因为 Neo4j 2.2 更改了许多内部 API。

下周左右敬请期待。