Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在neo4j中注册事务事件处理程序_Neo4j_Spring Data Neo4j_Spring Data Graph - Fatal编程技术网

在neo4j中注册事务事件处理程序

在neo4j中注册事务事件处理程序,neo4j,spring-data-neo4j,spring-data-graph,Neo4j,Spring Data Neo4j,Spring Data Graph,我目前在Neo4j中使用Spring数据,并对SpringRestGraphDatabase进行了子类化,以允许注册特定的事务事件处理程序 我调用registerTransactionEventHandler方法来执行此操作。不幸的是,我总是遇到以下异常: Caused by: java.lang.UnsupportedOperationException: null at org.neo4j.rest.graphdb.AbstractRemoteDatabase.registerTra

我目前在Neo4j中使用Spring数据,并对SpringRestGraphDatabase进行了子类化,以允许注册特定的事务事件处理程序

我调用
registerTransactionEventHandler
方法来执行此操作。不幸的是,我总是遇到以下异常:

Caused by: java.lang.UnsupportedOperationException: null
    at org.neo4j.rest.graphdb.AbstractRemoteDatabase.registerTransactionEventHandler(AbstractRemoteDatabase.java:52) ~[neo4j-rest-graphdb-1.6.jar:1.6]
    at org.neo4j.rest.graphdb.RestGraphDatabase.registerTransactionEventHandler(RestGraphDatabase.java:28) ~[neo4j-rest-graphdb-1.6.jar:1.6]
public <T> TransactionEventHandler<T> registerTransactionEventHandler( TransactionEventHandler<T> tTransactionEventHandler ) {
    throw new UnsupportedOperationException();
}
仔细观察AbstractRemote,我发现它总是抛出一个异常:

Caused by: java.lang.UnsupportedOperationException: null
    at org.neo4j.rest.graphdb.AbstractRemoteDatabase.registerTransactionEventHandler(AbstractRemoteDatabase.java:52) ~[neo4j-rest-graphdb-1.6.jar:1.6]
    at org.neo4j.rest.graphdb.RestGraphDatabase.registerTransactionEventHandler(RestGraphDatabase.java:28) ~[neo4j-rest-graphdb-1.6.jar:1.6]
public <T> TransactionEventHandler<T> registerTransactionEventHandler( TransactionEventHandler<T> tTransactionEventHandler ) {
    throw new UnsupportedOperationException();
}
公共TransactionEventHandler注册表TransactionEventHandler(TransactionEventHandler TTTransactionEventHandler){
抛出新的UnsupportedOperationException();
}
RestGraphDatabase
没有为register方法提供实现,因此出现异常。我不确定要使用什么替代方案,尤其是在扩展
SpringRestGraphDatabase

有更干净的选择吗

(我使用的是v2.1.0.M1)

是的,
通过网络暴露这些处理程序的成本非常高。根据您想做什么,我建议您编写一个自定义插件来公开您的操作,并通过REST端点注册您需要的内容,请参见

谢谢,我们将对此进行研究。我的第一个偏好是使用嵌入式实例,但我使用的是Heroku,这确实限制了这一点。我应该提到,我使用事件处理程序的原因是为节点动态创建Id。这是一个非常好的问题,我们可以将其重新表述为:如何在外部neo4j数据库上注册事务事件处理程序?如何使其有状态,因为APOC似乎是无状态的?