Résultats de requête incohérents dans l’API Query Builder d’AEM
Dans Adobe Experience Manager (AEM), l’exécution d’une requête avec l’API Query Builder renvoie des résultats incohérents si un index non prévu est utilisé. Pour corriger ce problème, spécifiez l’index souhaité à l’aide d’un index dans l’API Query Builder.
Description description
Environnement
- Produit : AEM Managed Services, Sites ,v6.5
- Instance : Production
Problème/Symptômes
Les résultats de la requête sont incohérents lorsqu’un index involontaire est utilisé lors de l’exécution de la requête.
Résolution resolution
Pour résoudre ce problème, procédez comme suit
-
Attribuez une balise à la définition d’index personnalisée dans
/oak:index/<index>en spécifiant la propriététagsavec une valeur personnalisée. -
Utilisez le paramètre
p.indexTagdans la requête de l’API Query Builder. -
Ajoutez des
p.indexTag=<tagname>à la requête, où<tagname>correspond à la balise d’index personnalisée. -
Vérifiez que la requête utilise l’index personnalisé prévu. Par exemple :
- Exemple de définition d’index personnalisé (sous
/oak:index/fullTextSearch) :jcr:mixinTypes="[ rep:AccessControllable] "async="[ async,nrt] "compatVersion="{Long}2"evaluatePathRestrictions="{Boolean}true"excludedPaths="[ /var,/etc/replication,/etc/workflow/instances,/jcr:system] "includedPaths="[ /content/mysite] "queryPaths="[ /content/mysite] "reindex="{Boolean}false"reindexCount="{Long}1"seed="{Long}-4788584413483415353"type="lucene"tags="[ customSearch] " - Requête XPath utilisant un index spécifique :
/jcr:root/content/data/element(*, cq:Page)[ (jcr:contains(., 'courses'))] option (index tag customSearch) - Requête d’API Query Builder équivalente :
fulltext=coursestype=cq:Pagepath=/content/mysitep.limit=10p.indexTag=customSearch
- Exemple de définition d’index personnalisé (sous
-
Exécutez la requête mise à jour pour vérifier que les résultats sont cohérents et précis avec l’index personnalisé spécifié (
customSearch).
Lectures connexes
- Référence des prédicats de Query Builder dans le guide d’utilisation d’AEMaaCS.
- Traitement du moteur de requête dans la documentation Oak
- Bonnes pratiques d’indexation dans AEM