我正在使用ES 1.5.2版,并通过JEST包装器使用JAVA API。我想创建一些percolate查询并将它们存储在索引中。
在某些地方,我看到一种语法,表明我可以在任何索引中存储percolate查询,但类型必须是'.percolator'类型。在其他地方,我已经看到查询需要存储在一个名为'_percolator'的特殊索引中。
以下是我尝试过的一段代码,但它不起作用。
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
searchSourceBuilder.query(QueryBuilders.matchQuery("stock", "apple"));
saveDoc(searchSourceBuilder, "company-apple", "_percolator", "stocks");
public JestResult saveDoc(Object doc, String docId, String indexName, String type) {
Index index = new Index.Builder(doc).id(docId).index(indexName).type(type).build();
return client.execute(index);
}
答案 0 :(得分:0)
在.toString()
上明确调用searchSourceBuilder
可解决问题。不知道为什么要这样做;我原以为GSON会在JEST库中做到这一点。