Как показать имена файлов в результатах поиска, используя Solr FileListEntityProcessor - PullRequest
2 голосов
/ 13 мая 2011

Я пытаюсь просканировать все файлы pdf / doc в каталоге.Это прекрасно работает, и я могу сканировать все документы.

Следующее, что я пытаюсь сделать, это также получить имя файла в результатах поиска.Однако имя файла никогда не появляется.Я попробовал пару вещей, но документация не очень полезна о том, как это сделать.

Я использую конфигурацию Solr, найденную в дистрибутиве Solr: apache-solr-3.1.0 / example / example-DIH / solr / tika / conf

Thisэто мой 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>

Меня интересует способ правильной настройки, а также любые другие места, где я могу найти конкретную документацию.

1 Ответ

3 голосов
/ 19 мая 2011

Вы должны использовать файл вместо fileName в столбце

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

Не забудьте добавить 'fileName' в schema.xml в разделе полей.

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