DataImportHandler DIH для FileSystem DataSource

У меня есть источник данных fileSystem, и я создал dataconfig для его запуска DIH, который dataconfig

<!--?xml version="1.0" encoding="UTF-8"?-->
<dataconfig>
 <datasource type="FileDataSource">
 <document>
 <entity name="pdf" processor="FileListEntityProcessor" basedir="/path/to/my/pdf" filename=".*pdf" newerthan="'NOW-3DAYS'" recursive="true" rootentity="false" datasource="pdf">
 </entity>
 </document>
</datasource></dataconfig>

и когда я запускаю DIH, он дает Индексирование завершено.Добавлено/Обновлено: 0 документов.Удалено 0 документов.Запросы: 0, Получено: 35924, Пропущено: 0, Обработано: 0

Любая идея, почему он не обработал какой-либо документ?

2 ответа

Спасибо, я сделал это, а ниже - нужный dataconfig

<!--?xml version="1.0" encoding="UTF-8"?--> 
<dataconfig> 
 <datasource type="BinFileDataSource"> 
 <document> 
 <entity name="pdf" processor="FileListEntityProcessor" basedir="/path/to/my/pdf" filename=".*pdf" newerthan="'NOW-3DAYS'" recursive="true" rootentity="false" datasource="null"> 
 <field column="fileAbsolutePath" name="id"> 
 <entity name="documentImport" processor="*******************" url="${pdf.fileAbsolutePath}" format="text"> 
 <field column="text" name="text"> 
 </field></entity> 
 </field></entity> 
 </document> 
</datasource></dataconfig>


У вас нет корневого объекта в вашей конфигурации; у вас есть только одна сущность, и она имеет rootEntity = "false", поэтому из нее не создаются никакие документы.

Вам также необходимо определить некоторые "полевые" линии внутри вашего объекта, чтобы сопоставить информацию о файле с полями вашей схемы; этот вопрос, индексирующий все документы в папке doc в solr FileListEntityProcessor делает что-то похожее на то, что вам нужно.

licensed under cc by-sa 3.0 with attribution.