ElasticSearch与Spring Boot集成问题
2016-07-05 15:29
561 查看
1、None of the configured nodes are available 或者
org.elasticsearch.transport.RemoteTransportException: Failed to deserialize exception response from stream
原因:spring data elasticSearch 的版本与Spring boot、Elasticsearch版本不匹配。
解决:
这是版本之间的对应关系。Spring boot 1.3.5默认的elasticsearch版本是1.5.2,此时启动1.7.2版本以下的Elasticsearch客户端连接正常。
注:注意java的es默认连接端口是9300,9200是http端口,这两个在使用中应注意区分。
2、Caused by: java.lang.IllegalArgumentException: @ConditionalOnMissingBean annotations must specify at least one bean (type, name or annotation)
原因:spring boot是1.3.x版本,而es采用了2.x版本。在es的2.x版本去除了一些类,而这些类在spring boot的1.3.x版本中仍然被使用,导致此错误。
解决:依照问题1中的版本对应关系,启动特定版本的es即可。
org.elasticsearch.transport.RemoteTransportException: Failed to deserialize exception response from stream
原因:spring data elasticSearch 的版本与Spring boot、Elasticsearch版本不匹配。
解决:
Spring Boot Version (x) | Spring Data Elasticsearch Version (y) | Elasticsearch Version (z) |
---|---|---|
x <= 1.3.5 | y <= 1.3.4 | z <= 1.7.2* |
x >= 1.4.x | 2.0.0 <=y < 5.0.0** | 2.0.0 <= z < 5.0.0** |
注:注意java的es默认连接端口是9300,9200是http端口,这两个在使用中应注意区分。
2、Caused by: java.lang.IllegalArgumentException: @ConditionalOnMissingBean annotations must specify at least one bean (type, name or annotation)
原因:spring boot是1.3.x版本,而es采用了2.x版本。在es的2.x版本去除了一些类,而这些类在spring boot的1.3.x版本中仍然被使用,导致此错误。
解决:依照问题1中的版本对应关系,启动特定版本的es即可。
相关文章推荐
- 【eclipse】导入/导出开发环境(包括编辑器字体颜色大小等)
- Spring MVC 实践 - Component
- 在Eclipse中使用JUnit4进行单元测试(中级篇)
- java提高篇(二三)-----HashMap
- Spring MVC 实践 - Component
- Spring MVC 实践 - Component
- SpringMVC+hibernate整合JBPM4.4
- 【报错】Unable to load configuration
- java之TreeMap/TreeSet篇
- Java IO之Socket通信
- Java中的深拷贝和浅拷贝(转载)
- Socket通信
- Java中,状态模式和策略模式的区别
- Java性能优化指南系列(一):概述和性能测试方法
- 使用Eclipse将Web项目打Jar包方法
- 求幂的高效率算法
- MyEclipse第一个Servlet程序
- java基础之----静态代码块和静态方法、以及static 关键字
- Java如何实现对Mysql数据库的行锁
- Java对MySQL数据库进行连接、查询和修改