Erreur de gestion des différences en mode création dans les environnements AEM Sites

Si le mode de création présente des erreurs de composant intégré sur un environnement AEM Sites, mais ne parvient pas à effectuer le rendu de la page sur un autre environnement, vérifiez la configuration WCMDeveloperModeFilter de chaque environnement. Ce filtre est activé par défaut sur chaque instance de création et désactivé par défaut sur chaque instance de publication. Les différences entre les niveaux de création proviennent généralement de la configuration personnalisée, et non des valeurs par défaut de la plateforme.

Description description

Dans Adobe Experience Manager Sites, une même page peut afficher un comportement de gestion des erreurs différent en mode création dans tous les environnements. Sur certaines instances de création, les échecs au niveau du composant s’affichent en ligne et le reste de la page continue à s’afficher. Dans d’autres cas, des erreurs similaires peuvent entraîner l’échec du rendu de la page entière ou rendre sa création impossible, même si la base de code est identique.

Environnement

Adobe Experience Manager as a Cloud Service (toutes versions)

Problème/Symptômes

  • Sur une instance de création, les erreurs de composant s’affichent en ligne et la page continue de se charger.
  • Sur une autre instance de création, la même erreur sous-jacente entraîne l’échec complet de la page en mode de création.
  • La cause première est souvent une référence de classe de composant manquante, qui renvoie une exception dans chaque environnement, mais l’expérience utilisateur résultante diffère.

Cause

Cette différence provient de la configuration de WCMDeveloperModeFilter (également appelé filtre de débogage de la gestion du contenu web CQ). Par défaut, AEM active ce filtre sur chaque instance de création et le désactive sur chaque instance de publication, quel que soit le niveau de l’environnement. Lorsqu’il est activé, le filtre capture les exceptions de composant et effectue le rendu de la page avec des messages d’erreur intégrés. Lorsque cette option est désactivée, une exception de composant peut entraîner l’échec de la page entière.

Si vous constatez que ce filtre se comporte différemment entre les environnements de création de différents niveaux (par exemple, création de développement par rapport à l’auteur d’évaluation ou de production), recherchez une configuration OSGi spécifique au niveau, telle qu’un dossier config.author.stage ou config.author.prod, qui remplace explicitement la valeur par défaut pour ce niveau. Il s’agit d’une personnalisation au niveau du projet, et non d’un comportement AEM prêt à l’emploi.

Résolution resolution

Pour résoudre ce problème, procédez comme suit.

  1. Examinez comment se comporte WCMDeveloperModeFilter défaut : il est activé sur chaque instance de création, où il intercepte les exceptions de composant et affiche des messages d’erreur intégrés de sorte que le reste de la page s’affiche, et désactivé sur chaque instance de publication, où une exception de composant peut entraîner l’échec de la page entière.
  2. Gardez le mode Développeur activé sur les instances de création afin que les erreurs de composant se produisent et soient corrigées rapidement, car sa désactivation peut masquer les échecs au niveau du composant jusqu’à ce que le code atteigne une étape ultérieure.
  3. Vérifiez la configuration du mode Développeur pour l’environnement en question en examinant la configuration OSGi pour com.day.cq.wcm.core.impl.WCMDeveloperModeFilter, généralement dans com.day.cq.wcm.core.impl.WCMDeveloperModeFilter.cfg.json, y compris tout dossier de mode d’exécution spécifique à un niveau tel que config.author.stage ou config.author.prod ; si la propriété enabled est définie sur false, le filtre est désactivé pour cette portée et si le fichier est absent ou enabled n’est pas défini sur false, le filtre utilise la valeur par défaut d’AEM.
  4. Utilisez l’onglet Erreurs dans le panneau latéral de l’éditeur d’AEM pour afficher les problèmes au niveau du composant. Seuls les membres du groupe d’administrateurs peuvent accéder au mode Développeur.
  5. Il est recommandé de résoudre les erreurs de composant sur un environnement de développement ou de création inférieur avant de promouvoir le code, de sorte que les mêmes erreurs ne se produisent pas de manière inattendue sur une instance de création de niveau supérieur.

Après avoir apporté une modification à la configuration, testez une page avec une erreur de composant connue sur chaque environnement de création affecté afin de confirmer le comportement attendu de gestion des erreurs.

Lecture connexe

recommendation-more-help
experience-cloud-kcs-help-kbarticles