Elasticsearch Java API 7.0 Bulk Insert пытается на базовом примере, выдает ошибки - PullRequest
1 голос
/ 03 мая 2019

Java 1.8, клиенты Elasticsearch для низкого и высокого уровня отдыха 7.0.0

Я пробую простой пример из документации, найденной здесь: Bulk API

BulkRequest bulkRequest = new BulkRequest();
request.add(new IndexRequest("posts").id("1")  
    .source(XContentType.JSON,"field", "valueString"));
 // not working


Map<String, Object> doc1 = new HashMap<>();
doc1.put("property", "value");
request.add(new IndexRequest("posts").id("1").source(doc1);
 // this is easy to add as a single IndexRequest, but not working here

 BulkResponse bulkResponse = this.getClient().bulk(request, RequestOptions.DEFAULT);
 // this is the line throwing the error, straight from the docs

ошибка:

{"error":{"root_cause":[{"type":"action_request_validation_exception","reason":"Validation Failed: 1: type is missing;"}],"type":"action_request_validation_exception","reason":"Validation Failed: 1: type is missing;"},"status":400}
        at org.elasticsearch.client.RestClient.convertResponse(RestClient.java:260)
        at org.elasticsearch.client.RestClient.performRequest(RestClient.java:238)
        at org.elasticsearch.client.RestClient.performRequest(RestClient.java:212)
        at org.elasticsearch.client.RestHighLevelClient.internalPerformRequest(RestHighLevelClient.java:1433)
        ... 6 more

так какой тип отсутствует? Я попытался добавить сопоставления, добавить opType ("create") в IndexRequest, который создается внутри request.add ()?

Да, это, наверное, какая-то простая оплошность с моей стороны, но я боролся с этим некоторое время, ребята, и был бы признателен за некоторую помощь.

...