首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Solr实时获取RemoteSolrException:应为mime类型应用程序/xml,但获取的是文本/html

Solr实时获取RemoteSolrException:应为mime类型应用程序/xml,但获取的是文本/html
EN

Stack Overflow用户
提问于 2014-06-07 04:01:19
回答 3查看 15.1K关注 0票数 0

远程服务器上的Solr版本:solr-4.3.1我正在尝试使用Solr Realtime Get在提交之前检索文档。我的代码

代码语言:javascript
复制
class Test3
{    
  static main(args) 
  {
    def test = new Test3()
    test.run()
  }

  private run() 
  {
    String url = "DEV_SERVER:8983/solr/emr"

    HttpSolrServer solr = new HttpSolrServer(url)

    SolrQuery q = new SolrQuery();
    q.setRequestHandler("/get");
    q.set("rid", "6662c0f2.ee6a64fe.588j6qohe.9kd087u.0r00dg.6kr5pc2as0qu9m4ibr7f7");

    QueryRequest req = new QueryRequest(q);
    req.setResponseParser(new BinraryResponseParser());

    println "=============================================="
    rsp = req.process(solr);    // ERROR
  }    
}

错误堆栈跟踪为:

代码语言:javascript
复制
Caught: org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException: Expected mime type application/octet-stream but got
text/html. <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
<title>Error 404 Not Found</title>
</head>
<body><h2>HTTP ERROR 404</h2>
<p>Problem accessing /solr/emr/get. Reason:
<pre>    Not Found</pre></p><hr /><i><small>Powered by Jetty://</small></i><br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>

</body>
</html>

org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException: Expected mime type application/octet-stream but got text/htm
l. <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
<title>Error 404 Not Found</title>
</head>
<body><h2>HTTP ERROR 404</h2>
<p>Problem accessing /solr/emr/get. Reason:
<pre>    Not Found</pre></p><hr /><i><small>Powered by Jetty://</small></i><br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>

</body>
</html>

        at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:459)
        at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:199)
        at org.apache.solr.client.solrj.request.QueryRequest.process(QueryRequest.java:91)
        at org.apache.solr.client.solrj.request.QueryRequest$process.call(Unknown Source)
        at com.att.songtao.test.Test3.run(Test3.groovy:48)
        at com.att.songtao.test.Test3.this$2$run(Test3.groovy)
        at com.att.songtao.test.Test3$this$2$run.call(Unknown Source)
        at com.att.songtao.test.Test3.main(Test3.groovy:14)

我正在遵循Realtime Get文档,并将updateLog添加到solrconfig.xml中的updateHandler。我的本地主机"localhost:8983/solr/collection1" (solr-4.7.2版本) Realtime Get工作得很好,但是把它放在远程服务器上会抛出上面的错误。

任何人都可以提供洞察力?

谢谢,

EN

回答 3

Stack Overflow用户

发布于 2016-04-13 21:10:50

如果您指定的提供集合名称或Solr URL的配置文件不正确,则通常会出现此类错误。在我的例子中,我的属性文件缺少我正在搜索的集合的属性。

票数 1
EN

Stack Overflow用户

发布于 2014-06-17 03:57:50

你拿回了404。看起来你没有启用ReplicationHandler。您可以将此代码添加到solrconfig.xml文件中,看看问题是否消失了

代码语言:javascript
复制
<requestHandler name="/get" class="solr.RealTimeGetHandler"> 
     <lst name="defaults"> 
       <str name="omitHeader">true</str> 
       <str name="wt">json</str> 
       <str name="indent">true</str> 
     </lst> 
</requestHandler>
票数 0
EN

Stack Overflow用户

发布于 2016-05-05 21:34:22

此错误可能是由于安装在系统中的connectivity.Which服务器导致的。

基本上,当您尝试通过Solr搜索索引时,您的服务器配置不正确,并拒绝您的连接。

验证您的服务器连接:

对于Tomcat执行给定的语句-

http://Your_Ip:8080/solr

如果服务器连接失败,请验证您使用的是哪台服务器。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24089769

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档