2
我在Solr的是新的,我掙扎進口一些不包含ID字段的XML數據,雖然它的要求,因爲它說我的schema.xml:如何使用DataImportHandler生成一個Id?
的XML例子:
<results>
<estacions>
<estacio id="72400" nom="Aeroport"/>
<estacio id="79600" nom="Arenys de Mar"/>
...
</estacions>
</results>
Schema.xml的:
<uniqueKey>id</uniqueKey>
在這一點上,我需要進口從http這個XML提取,然後我用DataimportHandler。 這是我的數據-config.xml中
<dataConfig>
<dataSource type="URLDataSource" />
<document>
<entity name="renfe"
url="http://host_url/myexample.xml"
processor="XPathEntityProcessor"
forEach="/results/estacions/estacio"
transformer="script:generateCustomId">
<field column="idestacio" xpath="/results/estacions/estacio/@id" commonField="true" />
<field column="nomestacio" xpath="/results/estacions/estacio/@nom" commonField="true" />
</entity>
</document>
然後,它似乎能正常工作,但我得到了以下錯誤: org.apache.solr.common.SolrException:[DOC = NULL ]缺少必填字段:編號
這讓我覺得我應該在導入時使用data-config.xml生成一個自動ID,但我不明白怎麼做。
我該怎麼辦?使用ScriptTransformer?任何想法是感謝
而另一個問題:我可以強制導入過程中的值?
對於前:<field column="site" value="estacions"/>
(這顯然不工作)
偉大的!現在看起來很容易... – larrytron