Скрипт обновления API ElasticSearch - создание массива структур - PullRequest
0 голосов
/ 21 октября 2019

Я использую Elasticsearch 6.5. Я пишу скрипт для обновления API в безболезненно. Мне нужно добавить структуры в массив структур. Если это поле не существует в документе (я могу это определить), я создаю новый массив с первым элементом:

ctx._source.myStructArr = new def[] {struct_1};

Позже я хочу добавить дополнительные структуры:

ctx._source.myStructArr.add(struct_n);

но я получаю следующую ошибку:

"тип": "недопустимое_аргумент_exception", "причина": "динамический метод [java.lang.Object [], добавить / 1] не найден"

Как добавить элемент в этот массив? Или, может быть, я должен создать / инициализировать массив другим способом?

1 Ответ

0 голосов
/ 08 ноября 2019

Попробуйте использовать ArrayList вместо new def[].

def arr = new ArrayList();
arr.add(struct_n)

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...