У меня возникли проблемы с работой этого URL-запроса в Java, он не возвращает никаких результатов. но из браузера возвращает все результаты, вот URL, который возвращает результат:эластичный поисковый запрос в java
_search?pretty&q=*357*+AND+account_id:574fe92c9179a809fd76f0b8+AND+invalid:false
И вот мой код (не возвращает никаких результатов):
FilterBuilder[] filtersArray = new FilterBuilder[2];
filtersArray[0] = FilterBuilders.termFilter("account_id", "574fe92c9179a809fd76f0b8");
filtersArray[1] = FilterBuilders.termFilter("invalid", false);
QueryBuilder query = QueryBuilders.filteredQuery(QueryBuilders.simpleQueryStringQuery("*357*"), FilterBuilders.andFilter(filtersArray));
SearchResponse response = esClient.prepareSearch(SecurityManager.getNamespace())
.addSort("created_time", SortOrder.DESC)
.setTypes(dataType)
.setQuery(query)
.addFields("_id")
.setFrom(page * size)
.setSize(size)
.setExplain(false)
.execute()
.actionGet();
Может кто-нибудь сказать мне, что лучший способ перевести URL-запрос в Java-запрос?
В вашем URL запроса '& account_id = 574fe92c9179a809fd76f0b8 & недействителен = false' не будет иметь никакого эффекта, я думаю, что вы хотите, чтобы это вместо : 'q = * 357 * + AND + account_id: 574fe92c9179a809fd76f0b8 + AND + invalid: false'. Проверьте свои результаты, и вы увидите, что у вас есть документы с разными значениями 'account_id' и' invalid'. – Val
OK извините за ошибку, но даже после того, как я положил ее в упомянутый выше, я все еще получаю 2256 просмотров, но ничего в драйвере JAVA:/ – user1221612
Я обновил вопрос – user1221612