Java neo4j嵌入式版本2.3.8的NotInTransactionException

Java neo4j嵌入式版本2.3.8的NotInTransactionException,java,neo4j,Java,Neo4j,我已将neo4j嵌入式版本1.9.8升级到2.3.8,升级后的服务器已启动。但是从下面的代码中获取NotInTransactionException。似乎有些索引问题 protected Record getNext() throws Exception { if (hits == null) { hits = index.query(query); } T next = hits.next(); if (next == null) {

我已将neo4j嵌入式版本1.9.8升级到2.3.8,升级后的服务器已启动。但是从下面的代码中获取NotInTransactionException。似乎有些索引问题

 protected Record getNext() throws Exception {
    if (hits == null) {
        hits = index.query(query);
    }
    T next = hits.next();
    if (next == null) {
        return finished();
    } else {
        return nodeToRecord.call(next);
    }
}
下面是错误。我的类名是GraphNodeIterator

Unexpected error : org.neo4j.graphdb.NotInTransactionException
at org.neo4j.kernel.impl.core.ThreadToStatementContextBridge.assertInUnterminatedTransaction(ThreadToStatementContextBridge.java:72)
at org.neo4j.kernel.impl.core.ThreadToStatementContextBridge.getTopLevelTransactionBoundToThisThread(ThreadToStatementContextBridge.java:106)
at org.neo4j.kernel.impl.core.ThreadToStatementContextBridge.getKernelTransactionBoundToThisThread(ThreadToStatementContextBridge.java:113)
at org.neo4j.kernel.impl.core.ThreadToStatementContextBridge.get(ThreadToStatementContextBridge.java:65)
at org.neo4j.kernel.impl.coreapi.LegacyIndexProxy.query(LegacyIndexProxy.java:363)
at com.nodalgeography.graph.GraphNodeIterator.getNext(GraphNodeIterator.java:32)
at com.nodalgeography.graph.GraphNodeIterator.getNext(GraphNodeIterator.java:14)
at com.googlecode.totallylazy.iterators.StatefulIterator.hasNext(StatefulIterator.java:23)
at com.googlecode.totallylazy.iterators.StatefulIterator.next(StatefulIterator.java:36)
at com.googlecode.totallylazy.Computation$2.call(Computation.java:80)
at com.googlecode.totallylazy.callables.LazyCallable.get(LazyCallable.java:19)
at com.googlecode.totallylazy.Lazy.call(Lazy.java:22)
at com.googlecode.totallylazy.Computation.isEmpty(Computation.java:121)
at com.googlecode.totallylazy.iterators.SegmentIterator.hasNext(SegmentIterator.java:18)

通常,
NotInTransactionException
与您在代码中执行的某些操作相关,这些操作必须由事务包装(没有指向索引的链接)。为了帮助您,您可以给我们提供
GraphNodeIterator
的代码吗?而且Neoj 2.3.8已经很老了,为什么不升级到Neo4j 3.X?这个问题在创建事务实例后得到了解决。首先我尝试升级到3.X,但是我得到了一个错误,比如1.9.8到3.X没有直接升级。所以我决定升级到2.3.8,因为它是一个稳定的版本。