2012-05-11 2 views
0

Я пытаюсь индексные данные из PDF сейчас, и я получаю следующий ответ от Solr:Индексирование данных из PDF

<response> 
<lst name="responseHeader"> 
<int name="status">0</int> 
<int name="QTime">1</int> 
</lst> 
<lst name="initArgs"> 
<lst name="defaults"> 
<str name="config">data-config.xml</str> 
</lst> 
</lst> 
<str name="command">full-import</str> 
<str name="status">idle</str> 
<str name="importResponse"/> 
<lst name="statusMessages"> 
<str name="Time Elapsed">0:0:1.236</str> 
<str name="Total Requests made to DataSource">0</str> 
<str name="Total Rows Fetched">1</str> 
<str name="Total Documents Processed">0</str> 
<str name="Total Documents Skipped">0</str> 
<str name="Full Dump Started">2012-05-11 15:45:01</str> 
<str name="">Indexing failed. Rolled back all changes.</str> 
<str name="Rolledback">2012-05-11 15:45:01</str></lst><str name="WARNING">This response format is experimental. It is likely to change in the future.</str> 
</response> 

Файлы журнала показывая это:

org.apache.solr.common.SolrException log 
SEVERE: Full Import failed:java.lang.RuntimeException: java.lang.RuntimeException: org.apache.solr.handler.dataimport.DataImportHandlerException: java.lang.NoClassDefFoundError: org/apache/tika/parser/AutoDetectParser 
    at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:264) 
    at org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:375) 
    at org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:445) 
    at org.apache.solr.handler.dataimport.DataImporter$1.run(DataImporter.java:426) 
Caused by: java.lang.RuntimeException: org.apache.solr.handler.dataimport.DataImportHandlerException: java.lang.NoClassDefFoundError: org/apache/tika/parser/AutoDetectParser 
    at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:621) 
    at org.apache.solr.handler.dataimport.DocBuilder.doFullDump(DocBuilder.java:327) 
    at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:225) 
    ... 3 more 
Caused by: org.apache.solr.handler.dataimport.DataImportHandlerException: java.lang.NoClassDefFoundError: org/apache/tika/parser/AutoDetectParser 
    at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:759) 
    at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:619) 
    ... 5 more 
Caused by: java.lang.NoClassDefFoundError: org/apache/tika/parser/AutoDetectParser 
    at java.lang.Class.forName0(Native Method) 
    at java.lang.Class.forName(Unknown Source) 
    at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:388) 
    at org.apache.solr.handler.dataimport.DocBuilder.loadClass(DocBuilder.java:1100) 
    at org.apache.solr.handler.dataimport.DocBuilder.getEntityProcessor(DocBuilder.java:912) 
    at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:635) 
    at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:709) 
    ... 6 more 
Caused by: java.lang.ClassNotFoundException: org.apache.tika.parser.AutoDetectParser 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at java.net.FactoryURLClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    ... 13 more 

файл конфигурации выглядит так: data-config.xml:

<?xml version="1.0" encoding="utf-8"?> 

<dataConfig> 
<dataSource type="BinFileDataSource" name="binary" /> 
    <document> 
     <entity name="f" dataSource="binary" rootEntity="false" processor="FileListEntityProcessor" baseDir="C:\solr\solr\docu" fileName=".*pdf" recursive="true"> 
      <entity name="tika" processor="TikaEntityProcessor" url="${f.fileAbsolutePath}" format="text"> 
       <field column="id" name="id" meta="true" /> 
       <field column="fake_id" name="fake_id" /> 
       <field column="model" name="model" meta="true" /> 
       <field column="text" name="biog" /> 
      </entity> 
     </entity> 
    </document> 

</dataConfig> 

schema.xml:

<fields> 
<field name="id" type="string" indexed="true" stored="true" /> 
    <field name="fake_id" type="string" indexed="true" stored="true" /> 
    <field name="model" type="text_en" indexed="true" stored="true" /> 
    <field name="firstname" type="text_en" indexed="true" stored="true"/> 
    <field name="lastname" type="text_en" indexed="true" stored="true"/> 
    <field name="title" type="text_en" indexed="true" stored="true"/> 
    <field name="biog" type="text_en" indexed="true" stored="true"/> 
    </fields> 
<uniqueKey>fake_id</uniqueKey> 
<defaultSearchField>biog</defaultSearchField> 

Наконец, «Тик» банка, которые я являюсь:

ТИК-ядро-1.0.jar и TIKA-парсеры-1.0.jar

Что происходит не так? Thanks

ответ

1

Проблема может быть в вашем файле данных config.xml, вы указали файл данных bin в объекте с именем «f» (с процессором FileListEntityProcessor), который имеет объект с процессором TikaEntityProcessor. Я думаю, вы можете попробовать с помощью этого кода:

<?xml version="1.0" encoding="utf-8"?> 
<dataConfig> 
<dataSource type="BinFileDataSource" name="binary" /> 
    <document> 
     <entity name="f" dataSource="null" rootEntity="false" processor="FileListEntityProcessor" baseDir="C:\solr\solr\docu" fileName=".*pdf" recursive="true"> 
      <entity name="tika" dataSource="binary" processor="TikaEntityProcessor" url="${f.fileAbsolutePath}" format="text"> 
       <field column="id" name="id" meta="true" /> 
       <field column="fake_id" name="fake_id" /> 
       <field column="model" name="model" meta="true" /> 
       <field column="text" name="biog" /> 
      </entity> 
     </entity> 
    </document> 
</dataConfig> 
+0

Спасибо. Я уже нашел решение – anarchos78

+1

Можете ли вы опубликовать свое решение? Я столкнулся с той же проблемой – theJango

Смежные вопросы