使用 Solr 索引文档会导致预期的 mime 类型 application/octet-stream 但得到 text/html
Posted
技术标签:
【中文标题】使用 Solr 索引文档会导致预期的 mime 类型 application/octet-stream 但得到 text/html【英文标题】:Indexing documents using Solr results in Expected mime type application/octet-stream but got text/html 【发布时间】:2015-05-30 10:34:25 【问题描述】:我想做的是使用 Solr 索引文档。
我已经在 Windows 环境中安装并启动了 Solr 服务器,我正在尝试使用 SolrJ 进行索引。
但是,当我尝试将 solr 文档添加到服务器时,如下所示,它会导致错误
server.add(indexDoc);
错误
Error from server at http://localhost:8983/solr: Expected mime type application/octet-stream but got text/html
<body><h2>HTTP ERROR 404</h2>
<p>Problem accessing /solr/update. Reason:
<pre> Not Found</pre></p><hr /><i><small>Powered by Jetty://</small></i><br/>
此问题的可能原因是什么。
【问题讨论】:
【参考方案1】:我认为 404 错误与您的问题更相关...请参阅:Error 404: Prob accessing /solr/update. Reason: Not Found
您在 URL 中缺少您的收藏名称。
【讨论】:
我在发布我的问题之前已经阅读过,我想这个例子有些不同。这家伙没有使用 SolarJ。他正在尝试做的是重命名为他正在处理的默认集合。就我而言,我要做的就是为某个文档编制索引。 那么请发布您的代码。此外,solrj 是一个用于与 Java 中的 solr 实例对话的 API;它们不是两种不同的“类型”的 solr 或任何东西……一个是客户端,一个是服务器。此外,您可以在 localhost:8983/solr/admin/cores?action=STATUS 此处查看您的 solr 内核。您的网址中没有核心的事实仍然是我认为的问题。 在我的例子中,在 solr 重启后核心丢失了,所以不得不再次创建核心并检查架构文件 我也遇到了同样的问题,谁能帮帮我。我的收藏在 url 中嵌入了两次,所以它给出了 404。=============== 访问 /solr/collectioName/collectioName/update 时出现问题。【参考方案2】:在我的情况下,这是因为 Core 不存在,我在此处指定 @SolrDocument(solrCoreName = "documents")
应该有一个名称为 documents 的 core
服务器。
所以我在 Windows 上使用以下命令 bin/solr.cmd create -c documents -p 8983
从命令行创建了核心。
然后它在我的情况下起作用了。
【讨论】:
【参考方案3】:在我的情况下,核心丢失了。使用以下命令创建nutch
核心:
$APACHE_SOLR_HOME/bin/solr create -c nutch -d $APACHE_SOLR_HOME/server/solr/configsets/nutch/conf/
另外,通过以下方式检查核心的状态:
localhost:8983/solr/admin/cores?action=STATUS
【讨论】:
【参考方案4】:检查您在 Collection 和 Application 中的字段名称是否不匹配。
【讨论】:
以上是关于使用 Solr 索引文档会导致预期的 mime 类型 application/octet-stream 但得到 text/html的主要内容,如果未能解决你的问题,请参考以下文章
Solr Realtime获取RemoteSolrException:预期的mime类型application / xml但是得到了text / html