Estoy usando SOLR 3.2. Mi aplicación emite consultas de búsqueda en la instancia SOLR, para un tipo de campo de texto. ¿Cómo puedo hacer SOLR para devolver resultados como "libro", "estantería", "bookasd", etc. cuando el usuario emite una consulta como "libro". ¿Debo agregar caracteres "*" a la cadena de consulta manualmente o hay una configuración en SOLR para que haga búsquedas de prefijo en el campo de forma predeterminada?¿Cómo se configura SOLR para que los usuarios puedan hacer la búsqueda de prefijos por defecto?
Ésta es la sección schema.xml para el tipo de campo de texto:
<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<charFilter class="solr.HTMLStripCharFilterFactory"/>
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.StopFilterFactory"
ignoreCase="true"
words="stopwords.txt"
enablePositionIncrements="true"
/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="1" splitOnCaseChange="0"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt"/>
</analyzer>
<analyzer type="query">
<charFilter class="solr.HTMLStripCharFilterFactory"/>
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenat0All="1" splitOnCaseChange="0"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt"/>
</analyzer>
</fieldType>
¿Ya ha encontrado una respuesta? –