3

すべての検索で、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>

助言がありますか?

4

1 に答える 1