2011-05-13 21 views
2

我试图扫描目录中的所有pdf/doc文件。这工作正常,我可以扫描所有文件。如何使用Solr的FileListEntityProcessor在搜索结果中显示文件名

我正在尝试做的下一件事是也在搜索结果中接收文件的文件名。然而,文件名从来没有出现。我尝试了几件事,但文档对于如何做到这一点并不是很有帮助。

我使用Solr的分布发现Solr的配置:Apache的Solr的-3.1.0 /例子/例子-DIH/Solr的/蒂卡/ conf目录

这是我dataConfig:

<dataConfig> 
    <dataSource type="BinFileDataSource" name="bin"/> 
    <document> 
    <entity name="f" processor="FileListEntityProcessor" recursive="true" 
      rootEntity="false" dataSource="null" baseDir="C:/solrtestsmall" 
      fileName=".*\.(DOC)|(PDF)|(pdf)|(doc)" onError="skip"> 

     <entity name="tika-test" processor="TikaEntityProcessor" 
       url="${f.fileAbsolutePath}" format="text" dataSource="bin" 
       onError="skip"> 
     <field column="Author" name="author" meta="true"/> 
     <field column="title" name="title" meta="true"/> 
     <field column="text" name="text"/> 
     </entity> 

     <field column="fileName" name="fileName"/> 
    </entity> 
    </document> 
</dataConfig> 

我感兴趣的是如何正确配置此方法,以及任何其他地方,我可以找到特定的文档。

回答

3

您应该使用文件而不是文件名中

<field column="file" name="fileName"/> 

不要忘记将“文件名”添加到该领域部分schema.xml中。

<field name="fileName" type="string" indexed="true" stored="true" />