我使用Solr + Spring Data Solr进行Solr索引。
我在尝试保存solr文档时遇到以下错误。
HTTP Status 500 - Request processing failed; nested exception is org.springframework.data.solr.UncategorizedSolrException: Expected mime type application/octet-stream but got text/html.
这是我的代码: 配置:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:solr="http://www.springframework.org/schema/data/solr"
xsi:schemaLocation="http://www.springframework.org/schema/data/solr http://www.springframework.org/schema/data/solr/spring-solr.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<solr:repositories base-package="my.solr.repo"
multicore-support="true" />
<solr:solr-server id="solrServer" url="http://localhost:8983/solr" />
<bean id="solrTemplate" class="org.springframework.data.solr.core.SolrTemplate">
<constructor-arg index="0" ref="solrServer" />
</bean>
</beans>
@Repository
public class SolrMyRepository extends
SimpleSolrRepository<SolrmyModel, Serializable> {
@Autowired
public SolrMyRepository(final SolrTemplate solrTemplate) {
super(solrTemplate);
}
}
@SolrDocument(solrCoreName = "my")
public class SolrMyModel {
@Id
@Indexed
private Long id;
@Indexed
private String myTitle;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getMyTitle() {
return myTitle;
}
public void setMyTitle(String myTitle) {
this.myTitle = myTitle;
}
}
@Service
public class SolrMyService {
@Autowired
private SolrMyRepository solrMyRepository;
public void test() {
final SolrMyModel model = new SolrMyModel();
model.setId((long) 1);
model.setTitle("My title");
System.out.println(model);
solrMyRepository.save(model);
}
}
我不确定我还缺少什么,但我经常遇到这个错误。
解决方案:
我克服了上述问题,因为我没有通过运行以下命令来创建solr核心。
./solr create -c my
现在它正在工作,我怎样才能以编程方式创建核心?
答案 0 :(得分:0)
我克服了上述问题,因为我没有通过运行以下命令来创建solr核心。
./ solr create -c my