elasticsearch exception

 

java.lang.NoSuchMethodError: org.elasticsearch.action.index.IndexRequest.ifSeqNo()J

原因是elasticsearch-rest-high-level-client依赖elasticsearch

<dependency>
   <groupId>org.elasticsearch.client</groupId>
   <artifactId>elasticsearch-rest-high-level-client</artifactId>
   <version>7.1.1</version>
</dependency>

把下面的依赖加上就行了,另外注意版本的对应关系

<dependency>
    <groupId>org.elasticsearch</groupId>
    <artifactId>elasticsearch</artifactId>
    <version>7.1.1</version>
</dependency>

 

org.elasticsearch.ElasticsearchException: Elasticsearch exception [type=date_time_parse_exception, reason=Text '2014-03-16 18:00:00' could not be parsed, unparsed text found at index 10]

原面在于一开始创建索引和文档的时候指定了"yyyy-MM-dd",而在新增或更新的时候却使用了"2014-03-16 18:00:00",由于不匹配对应格式所以报的日期解析异常.

补充说明: 在给elasticSearch传日期时,只需要要传规定格式的纯字符串即可, 且不能直接传java.Util.Date对象

 

Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=404, reply-text=NOT_FOUND - no queue 'receiveEsMessage' in vhost '/', class-id=50, method-id=10)

意为rabbitMQ中消息者想定位名为"receiveEsMessage "的队列,却不存在 , 所以我们需要先定义此队列再可以正常使用. 

但是当我们都使用@RabbitListener注解来声明交换器, 队列, 绑定 ,以及消费监听时, 可能由于Bean先后顺序的问题, 也会报以上异常, 此时先注释 @RabbitListener(queues = {...})注解 , 保留@RabbitListener(bindings = @QueueBinding(...... )注解 , 让队列先生成一次之后, 下次就可正常使用了.

posted @ 2019-11-11 10:06  苦涩泪滴  阅读(3354)  评论(0编辑  收藏  举报