问题描述:
Suppressed: org.elasticsearch.client.ResponseException: method [PUT], host [
http://localhost:9200
], URI [/search/
doc/4?timeout=1m], status line [HTTP/1.1 400 Bad Request]
{"error":{"root_cause":[{"type":"invalid_type_name_exception","reason":"Document mapping type name can't start with '
', found: [
doc]"}],"type":"invalid_type_name_exception","reason":"Document mapping type name can't start with '
', found: [_doc]"},"status":400}
at org.elasticsearch.client.RestClient.convertResponse(RestClient.java:283)
at org.elasticsearch.client.RestClient.performRequest(RestClient.java:261)
at org.elasticsearch.client.RestClient.performRequest(RestClient.java:235)
at org.elasticsearch.client.RestHighLevelClient.internalPerformRequest(RestHighLevelClient.java:1611)
... 5 more
问题原因:
旧版本ES必须指定type,新版java api默认type为_doc
解决方案:
指定type
IndexRequest indexRequest = new IndexRequest(INDEX, TYPE);
升级es至7.x以后版本