Domanda

Sto cercando di utilizzare SOLR DataImportHandler ai dati del feed. Configurazione era semplice e lineare e tutto ha funzionato bene, quando mi importava solo un campo da un'entità root.

Ma quando ho cercato di campi di importazione da entità nidificate, non funziona e non vedo perplesso e bloccato.

Ecco rilevante frammento dal mio 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>

Quando si tenta di eseguire il debug di importazione utilizzando la console di sviluppo DIH con verbose acceso, posso vedere qualcosa di simile:

...
<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>

Credo che il punto interessante sono i 3 query in entità b , dove il campo ID è vuoto. Mi sembra, come la $ {a.b_id} non è valutato, ma non riesco a capire perché.

Chiunque può aiutare, per favore? Grazie in anticipo.

È stato utile?

Soluzione

Ha, come al solito - dopo aver trascorso tutto il pomeriggio cercando di scoprire la soluzione, quando ho esaurito tutte le idee e fare comunità una domanda .. improvvisamente trovo la soluzione di me:)

Il fermo era maiuscole e minuscole - Se si guarda correttamente l'output XML dettagliato, v'è per qualche motivo . Così ho cercato di espressione uso $ {a.B_ID} e funziona!

Forse il caso superiore potrebbe essere speciffic solo per driver JDBC Oracle.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top