ElasticSearch-The number of object passed must be even but was [1]-问题解决

ES版本:6.4.3

1、The number of object passed must be even but was [1]

问题代码:

IndexRequest indexRequest = new IndexRequest(INDEX,TYPE,water.getId()).source(jsonStr);

解决:将jsonStr换成Map。

不报该错误了,但是又报错:

2、cannot write xcontent for unknown value of type class java.math.BigDecimal

解决:将6.4.3升级到6.7.2。

<es.version>6.7.2</es.version>

<dependency>
    <groupId>org.elasticsearch</groupId>
    <artifactId>elasticsearch</artifactId>
    <version>${es.version}</version>
</dependency>
<dependency>
    <groupId>org.elasticsearch.client</groupId>
    <artifactId>elasticsearch-rest-high-level-client</artifactId>
    <version>${es.version}</version>
</dependency>
原文地址:https://www.cnblogs.com/yaoyuan2/p/10938036.html