我发现我的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客户端的请求?
答案 0 :(得分:0)
这部分
WHERE bk.bookTitle =~ {0}
被视为正则表达式,其中{0}是出现次数。您需要在参数中传递整个正则表达式:
"(?i).*robert.*"
{0}的值为$driver = new \Behat\Mink\Driver\Selenium2Driver('firefox');
;