Configuration et personnalisation de la fonction de saisie assistée

La fonction de saisie assistée permet aux utilisateurs d'utiliser une liste d'options déroulante comme zone de recherche pour y rechercher et y sélectionner des éléments. Cette fonction doit être configurée avant d'être utilisée. Elle peut également être personnalisée.

Configuration de la saisie assistée

Pour obtenir des instructions sur la configuration de la saisie assistée, consultez la note technique 27042315.

Personnalisation de la saisie assistée

La fonction de saisie assistée possède son propre index et son propre analyseur qui peuvent être personnalisés. Sa configuration par défaut est la suivante :

    <fieldType name="text" class="solr.TextField" positionIncrementGap="100" autoGeneratePhraseQueries="true">
      <analyzer type="index">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
        <filter class="solr.NGramFilterFactory" minGramSize="1" maxGramSize="256"/>
      </analyzer>
      <analyzer type="query">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
      </analyzer>
    </fieldType>
Cette configuration permet un comportement de recherche en texte intégral tel que celui de la fonction "Find" d'un éditeur. Supposons, par exemple, que vous souhaitez personnaliser la saisie assistée pour ignorer des articles ("un", "une", "le") et des conjonctions ("ou", "mais", etc.). Indiquez ces mots dans le fichier stopwords_en.txt et modifiez {FTSHOME}\dbset\userdb\Solr\typeahead\conf\schema.xml comme suit :
    <fieldType name="text" class="solr.TextField" positionIncrementGap="100" autoGeneratePhraseQueries="true">
      <analyzer type="index">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.StopFilterFactory" ignoreCase="true" words="lang/stopwords_en.txt" enablePositionIncrements="true"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
        <filter class="solr.NGramFilterFactory" minGramSize="1" maxGramSize="256"/>
      </analyzer>
      <analyzer type="query">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.StopFilterFactory" ignoreCase="true" words="lang/stopwords_en.txt" enablePositionIncrements="true"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
      </analyzer>
    </fieldType>
Pour des informations de référence sur tous les paramètres de l'analyseur Solr, voir http://wiki.apache.org/solr/.
Remarque : Pour des informations de référence sur les commandes citées dans la procédure suivante, voir r_cqtsadmin_pl.
Si vous avez personnalisé la saisie assistée avant d'achever le déploiement de la recherche en texte intégral (c'est-à-dire avant d'exécuter --setup_cq_fts), aucune étape supplémentaire n'est nécessaire. Si vous avez déjà déployé la recherche en texte intégral, procédez comme suit :
  1. Arrêtez l'indexation en mode mise à jour :
    --stop_update_idx
  2. Redémarrez le profil FTS WAS :
    --stop_fts_was_profile
    --start_fts_was_profile
  3. Régénérez l'index :
    --fresh_batch_idx
    (Si cette commande échoue avant la fin, reprenez l'indexation à l'aide de la commande --run_batch_idx.)
  4. Réactivez l'indexeur de mode mise à jour :
    --start_update_idx
  5. Redémarrez le profil FTS WAS :
    --stop_fts_was_profile
    --start_fts_was_profile

Feedback