Recientemente instalé solr. El índice de ejemplo (encontrado en apache-solr - #. #. # \ Example \ solr) parece funcionar, y, una vez copiado en el directorio de inicio de mi servidor, puedo acceder a él a través de las páginas de administración. Sin embargo cuando intento poner en práctica un nuevo índice reemplazando el contenido schema.xml con (tomado de here):Solr: QueryElevationComponent requiere StrField uniqueKeyField error
<?xml version="1.0" encoding="UTF-8" ?>
<schema name="example" version="1.2">
<types>
<fieldType name="string" class="solr.StrField" sortMissingLast="true" omitNorms="true" />
<fieldType name="int" class="solr.TrieIntField" precisionStep="0" omitNorms="true" positionIncrementGap="0" />
<fieldType name="date" class="solr.TrieDateField" omitNorms="true" precisionStep="0" positionIncrementGap="0" />
<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory" />
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="1" />
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt" />
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true" />
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="1" />
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt" />
</analyzer>
</fieldType>
</types>
<fields>
<field name="fileid" type="int" indexed="true" stored="true" required="true" />
<field name="doctext" type="text" indexed="true" stored="false" required="false" />
<field name="title" type="text" indexed="true" stored="false" required="false" />
<field name="datecreated" type="date" indexed="true" stored="false" />
</fields>
<uniqueKey>fileid</uniqueKey>
<defaultSearchField>doctext</defaultSearchField>
<solrQueryParser defaultOperator="OR" />
</schema>
estoy recibiendo un error de configuración, lo que parece sugerir que el uniqueKeyField debe implementarse con un strField tipo (algo que me resulta difícil de creer que es realmente el caso?)):.
"estado HTTP 500 - errores graves en la configuración Solr ... org.apache.solr.common.SolrException: QueryElevationComponent requiere el esquema de tener un uniqueKeyField implementado usando StrField en org.apache.solr.handler.component.QueryElevationComponent.inform (QueryElevationComponent.java:157) en org.apache. solr.core.SolrResourceLoader.inform (SolrResourceLoader.java:508) a las ..."
Mi googlear ha aparecido muy poco para ayudar, así que espero que podría haber alguien por aquí que podría haber llegado a través de este problema y/o tiene algunas ideas de cómo resolverlo?
Gracias de antemano por cualquier consejo, Bea.
¡Problema resuelto! Gracias por confirmar que Mauricio, y por los enlaces. Como no necesitaré QueryElevationComponent, lo he eliminado y su controlador de mi archivo solrconfig.xml para evitar el problema. – bea