今天在尝试使用elasticasearch时碰到这个错误,在这里记录一下。
首先使用的是jest操作es,导入的pom为
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
<!-- https://mvnrepository.com/artifact/io.searchbox/jest -->
<dependency>
<groupId>io.searchbox</groupId>
<artifactId>jest</artifactId>
</dependency>
在配置文件里配置时发现spring.elasticsearch.jest.uris过时了,然后看到有host和port这两个配置,就用了上面的这种配置。这是导致后面出错的罪魁祸首。
在使用时直接注入
这个时候无论怎么操作都会报标题中的那个错。看错误信息也发现地址用的localhost,说明配置里面的那个没生效。
把配置文件注释掉
会发现又有用了。然后用过时的那个配置,发现也能成功。
说明如果直接注入JestClient的话,配置文件需要使用那种旧的配置方式,也就是过时的那种,要使用新的配置的话应该要自己去操作一下jestClient,具体如何实现还没有去研究,先把这个bug记下来。