Обновление по запросу в Elasticsearch с использованием Java

В настоящее время я использую Elasticsearch V2.3.1. Я хочу использовать следующий запрос Elasticsearch в Java.

POST /twitter/_update_by_query
{
  "script": {
    "inline": "ctx._source.List = [‘Item 1’,’Item 2’]”
  },
  "query": {
    "term": {
      "user": "kimchy"
    }
  }
}

Приведенный выше запрос ищет «пользователя» с именем «kimchy» и обновляет поле «Список» с заданными значениями. Этот запрос обновляет несколько документов одновременно. Я читал об обновлении API для Java здесьhttps://www.elastic.co/guide/en/elasticsearch/client/java-api/2.3/java-docs-update.html но не смог найти то, что искал. Обновление API для Java говорит только об обновлении одного документа за раз. Есть ли способ обновить несколько документов? Извините, если я упускаю что-то очевидное. Спасибо за ваше время.

Обновить:

Я попробовал приведенный ниже код Java:

Client client = TransportClient.builder().addPlugin(ReindexPlugin.class)
    .build().addTransportAddress(new InetSocketTransportAddress(
        InetAddress.getByName("127.0.0.1"), 9300));

UpdateByQueryRequestBuilder ubqrb = UpdateByQueryAction.INSTANCE
    .newRequestBuilder(client);

Script script = new Script("ctx._source.List = [\"Item 1\",\"Item 2\"]");

//termQuery is not recognised by the program
BulkIndexByScrollResponse r = ubqrb.source("twitter").script(script)
    .filter(termQuery("user", "kimchy")).execute().get();

Поэтому я отредактировал Java-программу, как указано выше, и termQuery не идентифицирован Java. Могу ли я знать, что я делаю здесь не так? Благодарю.

Ответы на вопрос(1)

Ваш ответ на вопрос