Я очень новичок в Solr. Мне удалось индексировать данные из моей базы данных sql через DIH. Теперь я хочу импортировать xml-файлы и индексировать их также через DIH, но это просто не сработает! Мои данные-config.xml выглядит следующим образом:Solr DataImportHandler не работает с файлами XML
<dataConfig>
<dataSource type="FileDataSource" encoding="UTF-8" />
<document>
<entity name="dir"
processor="FileListEntityProcessor"
baseDir="/bla/test2"
fileName=".*xml"
stream="true"
recursive="false"
rootEntity="false">
<entity name="PubmedArticle"
processor="XPathEntityProcessor"
transformer="RegexTransformer"
stream="true"
forEach="/PubmedArticle"
url="${dir.fileAbsolutePath}">
<field column="journal" xpath="//Name[.='journal']/following-sibling::Value/text()" />
<field column="authors" xpath="//Name[.='authors']/following-sibling::Value/text()" />
..etc
И у меня есть следующие поля в schema.xml:
<field name="journal" type="text" indexed="true" stored="true" required="true" /> <field name="authors" type="text" indexed="true" stored="true" required="true" />
Когда я запустить Solr я не получаю ошибки и индекс не индексируется:
<str name="Total **Rows Fetched**">**2000**</str>
<str name="Total **Documents Skipped**">**0**</str>
<str name="Full Dump Started">2012-02-01 14:59:17</str>
<str name="">Indexing completed. **Added/Updated: 0 documents.** Deleted 0 documents.
Can кто-нибудь скажет мне, что я сделал неправильно? Я даже дважды проверил путь синтаксис ...
Ну я не знаком с заводной, хотя, пример выглядит просто, но я до сих пор дон Даже не знаю, что делать с этим скриптом! Однако я обнаружил, что он действительно имеет какое-то отношение к выражению xpath. Файлы Xml выглядеть следующим образом: Журнал Журнал органической химии .Although выражения является правильным , когда я изменяю его только на документ индексов «// Name» DIH, но это не то, что я хочу. // Имя [text() = 'journal'] тоже не работает :(Я просто не понимаю, почему! –
Mel