すべての検索で、Jest クライアントは次のように uri で初期化されます。
http://serverIp:serverPort _all/_search
次のようなURIでクライアントを初期化するにはどうすればよいですか?
http://serverIp:serverPort _all/_suggest
Ipas JestClient と単語のメソッドで次のコードを使用しています。
String suggestionName = "custom-suggestion-3";
Suggest suggest = new Suggest.Builder("{" +
" \"" + suggestionName + "\" : {" +
" \"text\" :" + "\"" + wordToSearch + "\""+
" \"term\" : {" +
" \"field\" : \"description\"" +
" }" +
" }" +
"}").build();
SuggestResult result = client.execute(suggest);
ただし、エラーが発生します
java.lang.NoSuchMethodError: io.searchbox.client.http.JestHttpClient.getElasticSearchServer()Ljava/lang/String; ' client.execute(suggest) 中。
デバッグ中に、suggest変数の値をコピーしてSenseに貼り付けたところ、期待どおりに動作しています。
次のmaven依存関係を使用しています_all/_search
<dependency>
<groupId>io.searchbox</groupId>
<artifactId>jest</artifactId>
<version>0.1.2</version>
</dependency>
実行中のエラスティック バージョンは 5.0.1 で、Suggest には次の依存関係がインポートされています。
<dependency>
<groupId>io.searchbox</groupId>
<artifactId>jest-common</artifactId>
<version>2.0.0</version>
</dependency>
助言がありますか?