给出以下代码:
public class Foo
{
public void go(String relationship)
{
RestGraphDatabase rest = new RestGraphDatabase(
prop.getProperty("address"), prop.getProperty("username"),
prop.getProperty("password"));
ExecutionEngine engine = new ExecutionEngine(rest,
StringLogger.SYSTEM);
ExecutionResult result = engine
.execute("start n=node(7,8,9) match(n)-[" + relationship
+ "]->(x) return n,x,caution");
scala.collection.Iterator<Node> nodes = result.columnAs("n");
}
}
以上工作原理允许我迭代我的专栏:
public class Foo
{
public void go(String relationship)
{
RestGraphDatabase rest = new RestGraphDatabase(
prop.getProperty("address"), prop.getProperty("username"),
prop.getProperty("password"));
ExecutionEngine engine = new ExecutionEngine(rest,
StringLogger.SYSTEM);
ExecutionResult result = engine
.execute("start n=node(*) match(n)-[" + relationship
+ "]->(x) return n,x,caution");
scala.collection.Iterator<Node> nodes = result.columnAs("n");
}
}
迭代器中的结果抛出了一个不受支持的异常。列出值的node(*)
不是语法糖吗?如果不是,我怎么能node(*)
并迭代它呢?
堆栈:
2013-02-18 03:13:22.227 + 0000 INFO [org.neo4j]:start n = node(*) match(n) - [警告] - &gt;(x)返回n,x,警告列表(n,x,警告)
线程“main”中的异常java.lang.UnsupportedOperationException at org.neo4j.rest.graphdb.AbstractRemoteDatabase.getNodeManager(AbstractRemoteDatabase.java:136) 在 org.neo4j.rest.graphdb.RestGraphDatabase.getNodeManager(RestGraphDatabase.java:33) 在 org.neo4j.tooling.GlobalGraphOperations。(GlobalGraphOperations.java:39) 在 org.neo4j.tooling.GlobalGraphOperations.at(GlobalGraphOperations.java:51) 在 org.neo4j.cypher.internal.executionplan.builders.GraphGlobalStartBuilder $$ anonfun $ createStartPipe $ 1.适用(GraphGlobalStartBuilder.scala:51) 在 org.neo4j.cypher.internal.executionplan.builders.GraphGlobalStartBuilder $$ anonfun $ createStartPipe $ 1.适用(GraphGlobalStartBuilder.scala:51) 在 org.neo4j.cypher.internal.pipes.StartPipe $$ anonfun $ createResults $ 1.适用(StartPipe.scala:36) 在 org.neo4j.cypher.internal.pipes.StartPipe $$ anonfun $ createResults $ 1.适用(StartPipe.scala:35) 在scala.collection.Iterator $$ anon $ 13.hasNext(Iterator.scala:371)at at scala.collection.Iterator $$ anon $ 13.hasNext(Iterator.scala:371)at scala.collection.Iterator $$ anon $ 11.hasNext(Iterator.scala:327)at scala.collection.Iterator $$ anon $ 11.hasNext(Iterator.scala:327)at org.neo4j.cypher.internal.ClosingIterator $$ anonfun $ hasNext $ 1.适用$ MCZ $ SP(ClosingIterator.scala:36) 在 org.neo4j.cypher.internal.ClosingIterator $$ anonfun $ hasNext $ 1.适用(ClosingIterator.scala:35) 在 org.neo4j.cypher.internal.ClosingIterator $$ anonfun $ hasNext $ 1.适用(ClosingIterator.scala:35) 在 org.neo4j.cypher.internal.ClosingIterator.failIfThrows(ClosingIterator.scala:87) 在 org.neo4j.cypher.internal.ClosingIterator.hasNext(ClosingIterator.scala:35) 在 org.neo4j.cypher.PipeExecutionResult.hasNext(PipeExecutionResult.scala:139) 在scala.collection.Iterator $$ anon $ 11.hasNext(Iterator.scala:327)at scala.collection.Iterator $ class.isEmpty(Iterator.scala:256)at scala.collection.AbstractIterator.isEmpty(Iterator.scala:1156)
答案 0 :(得分:0)
使用RestCypherQueryEngine,请参阅this stackoverflow post。如果您查看来源,似乎有很多不受支持:AbstractRemoteDatabase。 ; - )
答案 1 :(得分:0)
此查询的目标是什么?这会返回整个图表吗?
如果您想对数据执行某些操作,请在服务器端执行 查询,而不是通过网络提取数据。
您的查询中也没有名为caution的标识符。
start n=node(*)
match(n)-[" + relationship + "]->(x)
return n,x,caution