Spring Data Neo4j和链式服务中的事务

时间:2016-01-26 19:34:57

标签: java spring neo4j spring-data-neo4j-4 neo4j-ogm

我有一个服务,例如

public class ServiceA {

    @Transactional
    public void a() {
        ...
        serviceB.b()
        ...
    }
}

调用另一个服务的方法

public class ServiceB {

    @Transactional
    public void b() {
        ...
        graphRepository.save(..)
        ...
    }
}

调用GraphRepository的方法。

如果在执行GraphRepository方法期间没有任何问题,everithigs运行良好,但如果GraphRepository中发生异常,则回滚不起作用,并且阻止对远程数据库的所有调用。

如果我在b()上移除Transactional注释,即使GraphRepository中发生异常,everithins也能正常工作。

我无法解释这种行为。

你能帮助我吗?

1 个答案:

答案 0 :(得分:0)

感谢Luanne和她的评论我解决了问题

这是一个错误,它在neo4j-ogm中解决了1.1.5-SNAPSHOT