2013-05-08 42 views
1

我刚刚安装的Solr在Ubuntu与下面的教程:的Solr Tomcat上无法发布XML文件无误场未知

http://feinan.com/2012/05/19/how-to-install-solr-3-6-0-on-ubuntu-12-04-lts/

这让我起来,运行良好。

但是,当我要发布一个新的XML文件(如在例如/ exampledocs的那些),我用下面的curl命令:

curl http://localhsot:8080/solr/core0/update -H "Content-Type: text/xml" --data-binary @vidcard.xml

,但我仍然得到错误:

ERROR: unknown field 'manu'

从其他QA我明白,这可能是我的schema.xml文件有问题。但是通过全新的安装,我很困惑,为什么我必须为每一个我要上传的XML添加每个字段(这里面有很多,所以我不知道我是否真的必须手动在此之前将其映射到schema.xml中)。

此外,我之前已经按照official tutorial,并使用java -jar post.jar solr.xml monitor.xml命令索引新的XML,这很好。

但是我对能够从HTTP进行更新感兴趣,因为这将如何与我们的系统集成。

完全披露:我是solr的新手(或许这是显而易见的)。

更新感谢@Alexandre Rafalovitch下面,我对Solr有所了解。但问题依然存在。例如,我使用默认的Solr安装示例/ exampledocs目录中的vidcard.xml文件,并将动态字段结尾添加到所有字段,但我仍然收到错误:ERROR: unknown field 'manu_s'

在此,I我试图弄清楚我经常陷入的典型的新手陷阱(即在安装完成后卡住了一些常见的东西,并没有试图在左边的领域做太多的事情)。

回答

0

Solr需要知道字段是什么类型,所以它知道如何解析/标记它们。如果您想以同样的方式标记它们,则可以使用dynamicField功能来匹配多个名称。

另请注意,更新不允许您发送随机XML。它期望具体的Solr Update XML格式。

+0

谢谢,我可以看到这可能会有所帮助,但考虑到上述因素后我仍然有同样的问题。我已更新原始帖子。 – roy 2013-05-08 20:58:41

+0

您认为应该匹配的模式定义是什么?您应该有 >重命名为。 – 2013-05-09 14:04:54