4

私はClobTransformer過去3日間からsolrで立ち往生しています。solrでoracleclobフィールドをテキストフィールドに変換したいと思います。複数のコアを使用していて、構成ファイルとスキーマファイルを最初から開始しました。

これは私の設定ファイルです:

<lib dir="../../../dist/" regex="apache-solr-dataimporthandler-.*\.jar" />

<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
    <lst name="defaults">
        <str name="config">data-config.xml</str>
    </lst>
</requestHandler>

コアのスキーマファイルの列は次のとおりです。

<field name="id" type="string" indexed="true" stored="true" multiValued="false" required="true"/>
<field name="mandp" type="text_en_splitting" indexed="true" stored="true" multiValued="false" />

これはコアの私のdata-config.xmlです:

<dataConfig>
  <dataSource type="JdbcDataSource" 
              driver="oracle.jdbc.driver.OracleDriver"
              url="jdbc:oracle:thin:@***" 
              user="***"
              password="****"/>
    <document>
        <entity name="wiki" transformer="ClobTransformer"
                 query="Select t.id as id, t.mandp From table1 t">
            <field column="mandp" name="mandp" clob="true" />
        </entity>
    </document>
</dataConfig>

solrを起動すると、dataimporthandler*.jarファイルがコンソールに正常にロードされていることがわかります。からdataimportを実行するhttp://localhost:8983/solr/wiki/dataimport?command=full-import&clean=falseと、コンソールにエラーが表示されず、トランスフォーマーやCLOBに関連するものも表示されません。したがって、トランスフォーマーパラメーター(transformer = "bla bla bla")に何かを入力しても、コンソールにエラーはスローされません。つまり、トランスフォーマー引数が完全に無視されるか、完全なログがオフになっている可能性があります。

solrにクエリを実行すると、mandpフィールドにoracle.sql.CLOB@375c929aが表示されます。もちろん、HTMLStripTransformerクラスも使用しても何も起こりません。この分野で両方を使いたい。

どんなアイデアでも大歓迎です!!!

4

2 に答える 2

4

ClobTransformer発射されていないようです。次のように、クエリ内の列名を個人的に変更しmandpます。

Select t.id as id, t.mandp as mandp From table1 t
于 2011-12-20T22:22:01.047 に答える
-1

transform="ClobTransformer, RegexTransformer" を data-config.xml ファイルのエンティティに追加してください

于 2014-11-14T03:47:28.667 に答える