Résoudre l’aperçu des lettres vides dans AEM 6.5 LTS sur Java 17 ou 21
Cet article décrit comment résoudre un problème où l’aperçu des lettres dans AEM Forms apparaît vide après la migration vers AEM 6.5 LTS et l’exécution sur Java 17 ou 21. La solution implique la mise à jour des options JVM pour autoriser l’accès au module nécessaire.
Description description
Environnement
- Adobe Experience Manager (AEM) 6.5 LTS
- Java 17 ou Java 21
Problème/Symptômes
Lors de la prévisualisation de modèles de lettre dans l’interface de création de correspondance, l’écran apparaît vide. Ce problème n’affecte pas les aperçus de Forms ou de documents et n’était pas présent sur Java 8 ou 11. Les journaux du serveur peuvent afficher des erreurs telles que java.lang.reflect.InaccessibleObjectException: Unable to make field private transient java.util.NavigableMap java.util.TreeSet.m accessible: module java.base does not "opens java.util" to unnamed module.
Cause
À partir de Java 17, l’encapsulation de module forte limite l’accès réflectif requis par le module Correspondence Management, ce qui entraîne l’aperçu vierge.
Résolution resolution
Pour résoudre le problème d’aperçu des lettres vides, procédez comme suit :
-
Recherchez le script ou le fichier de configuration qui définit les options JVM pour votre service AEM Windows. Pour les installations Windows, il s’agit généralement du fichier
instsrv.batdans votre répertoire d’installation d’AEM. -
Ouvrez le fichier et recherchez la ligne qui définit les options JVM (en commençant souvent par
set jvm_options=). Les options sont généralement séparées par des caractères#. -
Ajoutez l’argument JVM suivant à la liste d’options :
--add-opens=java.base/java.util=ALL-UNNAMED- Exemple :
set jvm_options=-Xmx2048m#--add-opens=java.base/java.util=ALL-UNNAMED#
- Exemple :
-
Enregistrez les modifications dans le fichier .
-
Réinstallez le service AEM Windows pour appliquer les options JVM mises à jour :
- Ouvrez une invite de commande Administrateur et accédez au répertoire contenant les scripts de service.
- Arrêtez le service AEM en utilisant :
net stop [ YourAEMServiceName] - Désinstallez le service :
instsrv.bat -uninstall [ YourAEMServiceName] - Réinstallez le service :
instsrv.bat [ YourAEMServiceName] - Démarrez le service :
net start [ YourAEMServiceName]
-
Une fois le service redémarré, connectez-vous à AEM et essayez de prévisualiser une lettre dans l’interface de création de correspondance. La lettre doit maintenant s’afficher correctement.
-
(Recommandé) Consultez la documentation officielle d’Adobe pour obtenir l’ensemble des options de
--add-opensJava 21 recommandées pour AEM 6.5 LTS afin d’assurer la compatibilité avec toutes les fonctionnalités.