apache solr lucene solr4 dih

apache - Solr 4-campo requerido faltante: uuid



lucene solr4 (1)

Siguiendo el ejemplo en el enlace , debería ser

<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"> ......... <lst name="defaults"> <str name="config">data-config.xml</str> <str name="update.chain">uuid</str> </lst> </requestHandler> <updateRequestProcessorChain name="uuid"> <processor class="solr.UUIDUpdateProcessorFactory"> <str name="fieldName">uuid</str> </processor> <processor class="solr.RunUpdateProcessorFactory" /> </updateRequestProcessorChain>

Tengo problemas para generar un UUID utilizando el dataImportHandler en Solr4. Im tratando de importar desde una base de datos MySQL existente.

Mi schema.xml contiene:

<fields> <field name="uuid" type="uuid" indexed="true" stored="true" required="true" /> <field name="id" type="string" indexed="true" stored="true" required="true"/> <field name="address" type="text_general" indexed="true" stored="true"/> <field name="city" type="text_general" indexed="true" stored="true" /> <field name="county" type="string" indexed="true" stored="true" /> <field name="lat" type="text_general" indexed="true" stored="true" /> <field name="lng" type="text_general" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true" /> <field name="price" type="float" indexed="true" stored="true"/> <field name="bedrooms" type="float" indexed="true" stored="true" /> <field name="image" type="string" indexed="true" stored="true"/> <field name="region" type="location_rpt" indexed="true" stored="true" /> <defaultSearchField>address</defaultSearchField> <field name="_version_" type="long" indexed="true" stored="true"/> <field name="text" type="text_general" indexed="true" stored="false" multiValued="true"/> </fields> <uniqueKey>uuid</uniqueKey>

y luego en <types>

<fieldType name="uuid" class="solr.UUIDField" indexed="true" />

Mi Solrconfig.xml contiene:

<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">   <updateRequestProcessorChain name="uuid"> <processor class="solr.UUIDUpdateProcessorFactory"> <str name="fieldName">uuid</str> </processor> <processor class="solr.RunUpdateProcessorFactory" /> </updateRequestProcessorChain> <lst name="defaults"> <str name="config">data-config.xml</str> </lst>

Cada vez que ejecuto la actualización, algunos documentos se insertan bien, compre muchos de regreso con:

org.apache.solr.common.SolrException: [doc=204] missing required field: uuid