0

mongoのデータソースとして使用しようとしているので、 JamessolrのDIHをフォローしてsolrアプリケーションで使用しました。フォルダーに次のものを追加しました。lib

  1. solr-dataimporthandler-1.4.1
  2. solr-mongo-importer-1.0.0
  3. nlog4j-1.2.17//LoggerFactoryクラスを要求したため
  4. モンゴ-2.10.1

そして私のdata-configファイルでは単に次のようになります:

<?xml version="1.0"?>
<dataConfig>
    <dataSource name="MyMongo" type="MongoDataSource" database="tracker" />
    <document name="hits">
         <entity processor="MongoEntityProcessor"
                 query="{}"
                 collection="hits"
                 datasource="MyMongo"
                 transformer="MongoMapperTransformer" >
             <field column="_id"           name="_id"       mongoField="_id"/>
         </entity>
     </document>
</dataConfig>

そして、完全にインポートしようとすると、次のように例外がスローされます。

SEVERE: Full Import failed:java.lang.RuntimeException: java.lang.RuntimeException: org.apache.solr.handler.dataimport.DataImportHandlerException: Unable to load EntityProcessor implementation for entity:19099085523711 Processing Document # 1
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: Unable to load EntityProcessor implementation for entity:19099085523711 Processing Document # 1
    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: Unable to load EntityProcessor implementation for entity:19099085523711 Processing Document # 1
    at org.apache.solr.handler.dataimport.DataImportHandlerException.wrapAndThrow(DataImportHandlerException.java:72)
    at org.apache.solr.handler.dataimport.DocBuilder.getEntityProcessor(DocBuilder.java:915)
    at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:635)
    at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:619)
    ... 5 more
Caused by: java.lang.ClassCastException: org.apache.solr.handler.dataimport.MongoEntityProcessor cannot be cast to org.apache.solr.handler.dataimport.EntityProcessor
    at org.apache.solr.handler.dataimport.DocBuilder.getEntityProcessor(DocBuilder.java:912)
    ... 7 more

誰かが私が混乱していることとこの問題を解決する方法を教えてもらえますか?

4

1 に答える 1

3

問題の核心は次のとおりです。

原因: java.lang.ClassCastException: org.apache.solr.handler.dataimport.MongoEntityProcessor は org.apache.solr.handler.dataimport.EntityProcessor にキャストできません

彼と同じバージョンの Solr を使用していないのではないかと思います。jar に基づいて、Solr 1.4.1 を使用しているようです。GitHub のタイムスタンプに基づくと、統合プロジェクトは 6 か月前のものであり、より新しい Solr (3.6 または - 可能性は低い - 4+) を使用している可能性があります。

Solr が十分に確立されたシステムでない限り、Solr 4 をダウンロードして、インストールに付属の DIH jar を使用して再試行します。

于 2013-02-19T16:28:33.507 に答える