映射器解析异常休息高级客户端版本7.6.1

时间:2020-04-14 14:47:17

标签: java elasticsearch elastic-stack resthighlevelclient

我正在尝试使用Rest高级客户端从Java创建映射,但是它抛出了映射器解析异常,但是下面的邮递员使用的是相同的映射。

我正在将映射json内容存储在文件中,并按照SO post的建议在java程序中读取

How to write json mapping in java using elastic search RestHighLevelClient?

 {
      "mappings": {
        "properties": {
          "events": {
            "type": "nested",
            "properties": {
              "recommendationData": {
                "type": "nested",
                "properties": {
                  "recommendations": {
                    "type": "nested",
                    "properties": {
                      "recommendationType": {
                        "type": "keyword"
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }

and from java i am using below code to create index and mapping

     private void checkAndCreateDocumentMapping() throws IOException {

            CreateIndexRequest createIndexRequest = new CreateIndexRequest(this.getIndexName());
            String indexString = "{\n" +
                    "    \"mappings\": {\n" +
                    "        \"recommendations\": {\n" +
                    "            \"properties\": {\n" +
                    "                \"events\": {\n" +
                    "                    \"type\": \"nested\",\n" +
                    "                    \"properties\": {\n" +
                    "                        \"recommendationData\": {\n" +
                    "                            \"type\": \"nested\",\n" +
                    "                            \"properties\": {\n" +
                    "                                \"recommendations\": {\n" +
                    "                                    \"type\": \"nested\",\n" +
                    "                                    \"properties\": {\n" +
                    "                                        \"recommendationType\": {\n" +
                    "                                            \"type\": \"keyword\"\n" +
                    "                                        }\n" +
                    "                                    }\n" +
                    "                                }\n" +
                    "                            }\n" +
                    "                        }\n" +
                    "                    }\n" +
                    "                }\n" +
                    "            }\n" +
                    "        }\n" +
                    "    }\n" +
                    "}";

        createIndexRequest.source(indexString, XContentType.JSON);
        client.indices().create(createIndexRequest, RequestOptions.DEFAULT);
    }

出现以下错误:

ElasticsearchStatusException[Elasticsearch exception [type=mapper_parsing_exception, reason=Failed to parse mapping [_doc]: Root mapping definition has unsupported parameters:  [recommendations : {recommendations={properties={events={type=nested, properties={recommendationData={type=nested, properties={recommendations={type=nested, properties={recommendationType={type=keyword}}}}}}}}}}]]]; nested: ElasticsearchException[Elasticsearch exception [type=mapper_parsing_exception, reason=Root mapping definition has unsupported parameters:  [recommendations : {recommendations={properties={events={type=nested, properties={recommendationData={type=nested, properties={recommendations={type=nested, properties={recommendationType={type=keyword}}}}}}}}}}]]];

0 个答案:

没有答案