AEM as a Cloud Service: la cache del ResourceBundle i18n non viene aggiornata dopo le modifiche del dizionario

In Adobe Experience Manager as a Cloud Service, gli aggiornamenti ai file del dizionario i18n in /conf potrebbero non essere visualizzati nella cache di Sling ResourceBundle, causando la visualizzazione di chiavi i18n non risolte da parte delle etichette dell’interfaccia utente al posto del testo tradotto.

Descrizione description

Ambiente

Adobe Experience Manager as a Cloud Service (AEMaaCS)(tutte le versioni)

Problema/Sintomi

  • Le chiavi i18n appena aggiunte o aggiornate in /conf/.../i18n/en.json o fr.json sono presenti nell’archivio JCR ma non compaiono nella cache di Sling ResourceBundle.
  • Le etichette dell’interfaccia utente visualizzano le chiavi i18n non elaborate (ad esempio, lblExampleKey) invece del testo tradotto previsto nell’ambiente di authoring.
  • I tentativi di ricreare le librerie client o di invalidare la cache non risolvono il problema.

Causa

I file del dizionario i18n obsoleti o in conflitto in /conf possono impedire l’aggiornamento della cache di Sling ResourceBundle con nuove chiavi. Questo determina etichette di interfaccia utente non risolte. L’eliminazione dei nodi obsoleti e la garanzia che siano presenti solo i dizionari desiderati consentono alla cache di aggiornare e visualizzare le traduzioni corrette.

Risoluzione resolution

Per risolvere il problema, segui i passaggi seguenti:

  1. Identificare i file del dizionario i18n obsoleti o in conflitto in /conf, ad esempio /conf/<project>/i18n/en.json e fr.json.
  2. Creare un pacchetto di contenuti FileVault con una definizione di filtro che esegue il targeting dei file di dizionario obsoleti per l’eliminazione. Utilizzare mode="replace" per ogni nodo di dizionario obsoleto che si desidera rimuovere e mantenere vuoto il payload del pacchetto per tali percorsi in modo che l’installazione rimuova i nodi specificati dall’archivio.
  3. Distribuisci il pacchetto nell’ambiente di authoring tramite la pipeline CI/CD.
  4. Replica le modifiche all’ambiente di pubblicazione per garantire la coerenza su tutti i livelli.
  5. Verificare che i file obsoleti del dizionario, ad esempio /conf/<project>/i18n/en.json e fr.json, non siano più accessibili e restituire una risposta 404 quando si accede direttamente.
  6. Conferma che le etichette dell’interfaccia utente ora risolvano il testo tradotto corretto.

Nota

Se stai eseguendo la migrazione dei dizionari a /apps, aggiungi i nuovi dizionari e assicurati che i vecchi filtri /conf utilizzino la modalità di sostituzione per rimuovere i nodi obsoleti nella stessa versione.

Lettura correlata

Internazionalizzazione di componenti e applicazioni

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