Solr Realtime获取RemoteSolrException:预期的mime类型application / xml但是得到了text / html
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Solr Realtime获取RemoteSolrException:预期的mime类型application / xml但是得到了text / html相关的知识,希望对你有一定的参考价值。
远程服务器上的Solr版本:solr-4.3.1
我试图在提交之前使用Solr Realtime Get检索文档。我的代码
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
}
}
错误堆栈跟踪是:
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
添加到updateHandler
的solrconfig.xml
。我的本地主机"localhost:8983/solr/collection1"
(版本solr-4.7.2
)实时获取完美,但在远程服务器上使用它会抛出上述错误。
任何人都可以提供洞察力?
谢谢,
如果您指定的集合名称或Solr URL的配置文件不正确,则通常会出现此类错误。在我的情况下,我的属性文件缺少我正在搜索的集合的属性。
你有404回来了。看起来您没有启用ReplicationHandler。您可以将其添加到solrconfig.xml文件中,看看问题是否消失
<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>
此错误可能是由于服务器连接。您在系统中安装的哪个服务器意味着Tomcat或Jetty等。
当您尝试在Solr上搜索索引时,基本上您的服务器配置不正确并拒绝您的连接。
验证您的服务器连接:
对于Tomcat执行给定的声明 -
并且,如果服务器连接失败,请验证您使用的服务器。
以上是关于Solr Realtime获取RemoteSolrException:预期的mime类型application / xml但是得到了text / html的主要内容,如果未能解决你的问题,请参考以下文章
如何在 swift 4.0 中获取 firebase-realtime-database 中的特定值
bsc 通过地址 Web3 (realtime,socket) 获取事务列表
从 Firebase Realtime 获取特定值并收集它们的值
如何使用 Firebase RealTime 数据库根据特定类别获取项目集合
无法使用 Python gtfs_realtime_pb2 模块获取服务警报 Protobuff 以包含 header_text 或 description_text