我遵循了tutorial to use Solrj(并更新为最新的Solrj版本6.0.1),

1)下载Solr

2)使用命令行从Solr服务器启动


  solr-6.0.1 \ bin> solr启动


似乎一切正常,http://localhost:8983/solr/可以在浏览器中查看

3)执行HelloWorld Solrj代码:

public class SolrClientHelloWorld {

    public static void main(String args[]) {
        try {
            HttpSolrClient server = new HttpSolrClient (
                    "http://localhost:8983/solr/");
            SolrInputDocument doc = new SolrInputDocument();
            doc.addField("id", "tsetstst3r4", 1.0f);
            doc.addField("name", "doc1", 1.0f);
            doc.addField("price", 10);
            server.add(doc);
        } catch(Exception e) {
            e.printStackTrace();
        }
    }
}


例外


  org.apache.solr.client.solrj.impl.HttpSolrClient $ RemoteSolrException:
  服务器在http://localhost:8983/solr处出错:预期的mime类型
  application / octet-stream,但有text / html。
  找不到错误404 HTTP错误
  404访问/ solr / update时出现问题。原因:否
找到了
  
  在
  org.apache.solr.client.solrj.impl.HttpSolrClient.executeMethod(HttpSolrClient.java:545)
    在
  org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:241)
    在
  org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:230)
    在
  org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:149)
    在org.apache.solr.client.solrj.SolrClient.add(SolrClient.java:173)
    在org.apache.solr.client.solrj.SolrClient.add(SolrClient.java:138)
    在org.apache.solr.client.solrj.SolrClient.add(SolrClient.java:152)
    在SolrClient.main(SolrClient.java:16)


环境:Windows 10,Java版本“ 1.8.0_91”

我是否错过了在Solr服务器上进行配置的内容?

似乎没有解决方案的相关答案:

最佳答案

编制索引之前需要做两件事。

1.您必须具有核心或集合才能在SOLR中建立数据索引。
2.您必须在SOLR基本URL中添加核心/集合名称



1.在SOLR中启动并创建核心/集合

SOLR独立模式(核心):

bin>solr start
bin>solr create_core -c test -p 8983 -d basic_configs


SOLR Cloud模式(集合):

bin>solr start -cloud
bin>solr create -c test -p 8983 -d basic_configs


注意:请更新您在schema.xml中的字段

2.SOLRJ

从更新上面的行

HttpSolrClient server = new HttpSolrClient (
                    "http://localhost:8983/solr/");




HttpSolrClient server = new HttpSolrClient (
                    "http://localhost:8983/solr/test");


注意:这里我的核心/集合名称是test

10-08 07:34