elasticsearch7.1保存时报错:

org.elasticsearch.action.ActionRequestValidationException: Validation Failed: 1: type is missing;

at org.elasticsearch.action.ValidateActions.addValidationError(ValidateActions.java:26)

at org.elasticsearch.action.index.IndexRequest.validate(IndexRequest.java:148)

at org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighLevelClient.java:1399)

at org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEntity(RestHighLevelClient.java:1373)

at org.elasticsearch.client.RestHighLevelClient.index(RestHighLevelClient.java:821)

at com.jiachi.util.EsUtil.saveData(EsUtil.java:52)

at com.jiachi.util.EsUtil.main(EsUtil.java:69)

代码如下:

/**

* 单条保存

* @param index

* @param id

* @param m

*/

public static void saveData(String index,String id,Map m){

try {

RestHighLevelClient client = getClient();

IndexRequest indexRequest = new IndexRequest(index)

.id( id)

.source(m);

client.index(indexRequest, RequestOptions.DEFAULT);

} catch (Exception e) {

e.printStackTrace();

}

}pom.xml:

org.elasticsearch.client

elasticsearch-rest-high-level-client

7.1.0

怀疑是jar包的问题,看了官方文档,使用高级的client是说还要依赖于其他两个jar:

org.elasticsearch.client:elasticsearch-rest-client

org.elasticsearch:elasticsearch于是去https://mvnrepository.com/artifact/org.elasticsearch/elasticsearch/7.1.0找到这两个jar包,加上,就保存成功了。

新的pom.xml:

org.elasticsearch.client

elasticsearch-rest-high-level-client

7.1.0

org.elasticsearch.client

elasticsearch-rest-client

7.1.0

org.elasticsearch

elasticsearch

7.1.0

完整代码看:java如何连接es7.x集群

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐