解决方法:Spring Data Solr 3.0 以上版本 将@SolrDocument(solrCoreName = "new_core") 中的solrCoreName 字段改为使用collection字段即可
下面是问题解决经过:
暑假期间在做一个高并发的电商平台,需要用到Apache Solr.
Solr 版本是7.4 , Spring Boot 版本是 2.0.4 , Spring Data Solr 为 3.0.9
网上大部分的教程用的版本比较旧,在实体类使用的都是 @SolrDocument(solrCoreName = "new_core") .
然后在测试过程中会出现 Expected mime type application/octet-stream but got text/html 异常.
通过打断点调试
使用 solrCoreName 字段的时候,是无法加载到core的,需要使用collection .
通过查看注解的源码也可以看到,注释里面标识solrCoreName 已经过时,只不过在使用的时候,注解里面使用到了过时的字段, idea 不会给出警告提示,所以一时间没有想到的注解字段过时的问题!!!
希望Idea以后的版本能够有这样的提示吧.
在Google , Stack Overflow 找了挺多类似的问题,发现全都是Spring Data Solr 3.0以下的解决方式,所以在这里记录以下.
总结: 遇到找不到的问题,要多看源码!!!要多看源码!!!要多看源码!!!
原文地址:https://www.cnblogs.com/cearnach/p/9507850.html
时间: 2024-10-10 20:44:05