Risoluzione dell’anteprima di lettere vuote in AEM 6.5 LTS su Java 17 o 21

Questo articolo descrive come risolvere un problema in cui l’anteprima Lettere in AEM Forms appare vuota dopo la migrazione ad AEM 6.5 LTS e l’esecuzione su Java 17 o 21. La soluzione comporta l’aggiornamento delle opzioni JVM per consentire l’accesso al modulo necessario.

Descrizione description

Ambiente

  • Adobe Experience Manager (AEM) 6,5 LTS
  • Java 17 o Java 21

Problema/Sintomi

Quando si visualizzano in anteprima i modelli di lettera nell’interfaccia Create Correspondence (Crea corrispondenza), la schermata appare vuota. Questo problema non influisce sulle anteprime di Forms o Documents e non era presente in Java 8 o 11. I registri del server potrebbero mostrare errori come 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.

Causa

A partire da Java 17, l’incapsulamento del modulo strong limita l’accesso riflessivo richiesto dal modulo Gestione della corrispondenza, generando l’anteprima vuota.

Risoluzione resolution

Per risolvere il problema relativo all’anteprima Lettere vuote, effettua le seguenti operazioni:

  1. Individuare lo script o il file di configurazione che imposta le opzioni JVM per il servizio AEM Windows. Per le installazioni di Windows, si tratta in genere del file instsrv.bat nella directory di installazione di AEM.

  2. Aprire il file e trovare la riga che imposta le opzioni JVM (spesso a partire da set jvm_options=). Le opzioni sono in genere separate da # caratteri.

  3. Aggiungere il seguente argomento JVM all’elenco delle opzioni: --add-opens=java.base/java.util=ALL-UNNAMED

    • Esempio: set jvm_options=-Xmx2048m#--add-opens=java.base/java.util=ALL-UNNAMED#
  4. Salva le modifiche nel file.

  5. Reinstalla il servizio AEM Windows per applicare le opzioni JVM aggiornate:

    1. Aprire un prompt dei comandi Administrator e passare alla directory contenente gli script del servizio.
    2. Arresta il servizio AEM utilizzando: net stop [ YourAEMServiceName]
    3. Disinstalla il servizio: instsrv.bat -uninstall [ YourAEMServiceName]
    4. Reinstallare il servizio: instsrv.bat [ YourAEMServiceName]
    5. Avvia il servizio: net start [ YourAEMServiceName]
  6. Dopo il riavvio del servizio, accedi ad AEM e prova a visualizzare in anteprima una lettera nell’interfaccia per la creazione di corrispondenza. La lettera ora dovrebbe essere riprodotta correttamente.

  7. (Consigliato) Consulta la documentazione ufficiale di Adobe per l’intero set di opzioni Java 21 --add-opens consigliate per AEM 6.5 LTS per garantire la compatibilità con tutte le funzioni.

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