Neo4j 带有IN运算符的Cypher无效查询将导致CypherTypeException,但Java驱动程序将其吞并
这是密码1.8.2 我有以下可以正常工作的查询:Neo4j 带有IN运算符的Cypher无效查询将导致CypherTypeException,但Java驱动程序将其吞并,neo4j,cypher,Neo4j,Cypher,这是密码1.8.2 我有以下可以正常工作的查询: START person=node:personsindex('*:*') WHERE person.name IN ['Peter', 'Michael'] RETURN person; 在Java中运行时,使用: import org.neo4j.cypher.javacompat.ExecutionEngine; import org.neo4j.cypher.javacompat.ExecutionResult; .... Exe
START person=node:personsindex('*:*')
WHERE person.name IN ['Peter', 'Michael']
RETURN person;
在Java中运行时,使用:
import org.neo4j.cypher.javacompat.ExecutionEngine;
import org.neo4j.cypher.javacompat.ExecutionResult;
....
ExecutionEngine engine...
ExecutionResult result = this.engine.execute(query);
如果我的图表中有数据,我会得到以下结果:
assertEquals("Columns :", 1, result.columns().size());
Iterator<Node> personNodes = result.columnAs("person");
assertTrue("Should have some results", personNodes.hasNext())
我在shell上得到以下异常,这很好:
CypherTypeException: Literal expected to be of type Collection but it is of type String
但是当我用Java运行它时,异常被吞没,我得到一个列集,
但没有数据:
ExecutionResult result = this.engine.execute(query);
assertEquals("Columns :", 1, result.columns().size());
Iterator<Node> personNodes = result.columnAs("person");
assertFalse("No results", personNodes.hasNext())
ExecutionResult=this.engine.execute(查询);
assertEquals(“列:”,1,result.Columns().size());
迭代器personNodes=result.columnAs(“person”);
assertFalse(“无结果”,personNodes.hasNext())
这是预期的行为吗
ExecutionResult result = this.engine.execute(query);
assertEquals("Columns :", 1, result.columns().size());
Iterator<Node> personNodes = result.columnAs("person");
assertFalse("No results", personNodes.hasNext())