SDN查询带来了额外的记录

时间:2015-10-19 12:02:04

标签: neo4j spring-data-neo4j

我发现我的SDN设置(可能)存在一个奇怪的问题。来自Neo4j浏览器控制台的我的密码查询返回2个节点 -

    @Query("MATCH (bk:Book) WHERE bk.bookTitle =~ '(?i).*{0}.*' OR bk.authors =~ '(?i).*{0}.*'  return bk;")

...
    public Iterable<Book> searchBooksByProfileData(String keyword);
....

以上是我的期望。

但是,当我在我的存储库的一个搜索方法的查询注释中使用相同的查询时,SDN倾向于获取存储库中的所有节点 - 这是我的存储库i / f中的方法的样子 -

Authorization: Basic <base64-encoded-auth-info>

更多细节 - 1.我使用SDN - 3.4.0发行版,我的服务器是v2.1.6 2.当我验证我的日志时,我的测试用例似乎使SDN解雇了正确的查询。

只是想知道这怎么可能发生 - 我遗漏了一些东西,或者来自最新服务器的REST i / f没有正确地解释来自旧SDN客户端的请求?

1 个答案:

答案 0 :(得分:0)

这部分

WHERE bk.bookTitle =~ {0}

被视为正则表达式,其中{0}是出现次数。您需要在参数中传递整个正则表达式:

"(?i).*robert.*"

{0}的值为$driver = new \Behat\Mink\Driver\Selenium2Driver('firefox'); ;