質問

Solr DataImporthandlerを使用してデータをフィードしようとしています。ルートエンティティから1つのフィールドのみをインポートしていたとき、構成はシンプルで簡単で、すべてが正常に機能しました。

しかし、ネストされたエンティティからフィールドをインポートしようとしたとき、それは機能せず、私は本当に困惑し、立ち往生しています。

ここに私のdataConfigからの関連するスニペットがあります:

<dataConfig>
    <dataSource ... />
    <document>
        <entity name="a" query="select id, b_id from a" pk="id">
               <entity name="b" query="select title from b where id ='${a.b_id}'">
                   <field column="title" name="title" />
               </entity>
        </entity>
    </document>
</dataConfig>

冗長なスイッチを入れたDIH開発コンソールを使用してインポートをデバッグしようとすると、次のようなものがわかります。

...
<lst name="document#3">
<str>----------- row #1-------------</str>
<str name="ID">PST_210-SI.10             </str>
<str name="B_ID">6c2r3490seeqvb86pgb4c4trf9</str>
<str>---------------------------------------------</str>
−
<lst name="entity:b">
<str name="query">select title from b where id =''</str>
<str name="query">select title from b where id =''</str>
<str name="query">select title from b where id =''</str>
<str name="time-taken">0:0:0.1</str>
<str name="time-taken">0:0:0.1</str>
<str name="time-taken">0:0:0.1</str>
</lst>
</lst>

興味深い点は、エンティティの3つのクエリだと思います b, 、IDフィールドが空です。のように見えます $ {a.b_id} 評価されていませんが、その理由はわかりません。

誰でも助けてくれませんか?前もって感謝します。

役に立ちましたか?

解決

ハ、いつものように - 午後全体を見つけようとして解決策を見つけようとした後、すべてのアイデアを使い果たしてコミュニティに質問するとき。

キャッチはケースの感度でした - 冗長なXML出力を適切に見ると、何らかの理由であります . 。そこで、私は表現を使用しようとしました $ {a.b_id} そして、それは機能します!

たぶん、Oracle JDBCドライバーの場合にのみ、大文字が特定される可能性があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top