La localizzazione dei moduli adattivi si basa su due tipi di dizionari locali:
Dizionario specifico per il moduloContiene le stringhe utilizzate nei moduli adattivi. Ad esempio, etichette, nomi di campo, messaggi di errore, descrizioni della guida e così via. È gestito come un set di file XLIFF per ogni impostazione internazionale ed è possibile accedervi in https://<host>
:<port>
/libs/cq/i18n/translator.html.
Dizionari globaliCi sono due dizionari globali, gestiti come oggetti JSON, nella libreria client AEM. Questi dizionari contengono messaggi di errore predefiniti, nomi di mese, simboli di valuta, pattern di data e ora e così via. Puoi trovare questi dizionari in CRXDe Lite su /libs/fd/xfaforms/clientlibs/I18N. Queste posizioni contengono cartelle separate per ogni impostazione internazionale. Poiché i dizionari globali di solito non vengono aggiornati frequentemente, mantenere file JavaScript separati per ogni impostazione internazionale consente ai browser di memorizzarli nella cache e di ridurre l’utilizzo della larghezza di banda della rete quando si accede a diversi moduli adattivi sullo stesso server.
Quando viene eseguito il rendering di un modulo adattivo, identifica le impostazioni internazionali richieste esaminando i seguenti parametri nell’ordine specificato:
Parametro della richiesta afAcceptLang
Per ignorare le impostazioni internazionali del browser degli utenti, è possibile trasmettere il parametro della richiesta afAcceptLang
per forzare le impostazioni internazionali. Ad esempio, con il seguente URL verrà eseguito il rendering del modulo nelle impostazioni internazionali giapponesi:
https://[*server*]:[*port*]/<*contextPath*>/<*formFolder*>/<*formName*>.html?wcmmode=disabled&afAcceptLang=ja
Le impostazioni internazionali del browser impostate per l’utente, specificate nella richiesta utilizzando l’intestazione Accept-Language
.
Impostazione della lingua dell’utente specificata in AEM.
Una volta identificate le impostazioni internazionali, i moduli adattivi selezionano il dizionario specifico per il modulo. Se non viene trovato il dizionario specifico per il modulo per le impostazioni internazionali richieste, viene utilizzato il dizionario inglese (en).
Se non esiste una libreria client per le impostazioni internazionali richieste, cerca in una libreria client il codice della lingua presente nelle impostazioni internazionali. Ad esempio, se le impostazioni internazionali richieste sono en_ZA
(Inglese sudafricano) e la libreria client per en_ZA
non esiste, il modulo adattivo utilizzerà la libreria client per la lingua en
(Inglese), se esiste. Tuttavia, se non ne esiste nessuna, il modulo adattivo utilizza il dizionario per le impostazioni internazionali en
.
AEM Forms supporta attualmente la localizzazione di contenuti di moduli adattivi nelle impostazioni internazionali: inglese (en), spagnolo (es), francese (fr), italiano (it), tedesco (de), giapponese (ja), portoghese-brasiliano (pt-BR, cinese- (zh-CN), cinese-Taiwan (zh-TW) e coreano (ko-KR).
Per aggiungere il supporto per una nuova impostazione internazionale in fase di esecuzione dei moduli adattivi:
Aggiungere un’impostazione internazionale al servizio GuideLocalizationService
Aggiungere una libreria client XFA per le impostazioni internazionali
Aggiungere una libreria client per moduli adattivi per le impostazioni internazionali
Aggiungere supporto per le impostazioni internazionali del dizionario
https://[server]:[port]/system/console/configMgr
.Crea un nodo di tipo cq:ClientLibraryFolder
in etc/<folderHierarchy>
, con categoria xfaforms.I18N.<locale>
e aggiungi i seguenti file alla libreria client:
I18N. jsdefinition xfalib.locale.Strings
per <locale>
come definito in /etc/clientlibs/fd/xfaforms/I18N/ja/I18N
.
js. txtcontenenti quanto segue:
/libs/fd/xfaforms/clientlibs/I18N/Namespace.js
I18N.js
/etc/clientlibs/fd/xfaforms/I18N/LogMessages.js
Crea un nodo di tipo cq:ClientLibraryFolder
in etc/<folderHierarchy>
, con categoria come guides.I18N.<locale>
e dipendenze come xfaforms.3rdparty
, xfaforms.I18N.<locale>
e guide.common
. "
Aggiungi i seguenti file alla libreria client:
i18n. jsdefinition guidelib.i18n
, con pattern di "calendarSymSymbol", datePatterns
, timePatterns
, dateTimeSymbols
, numberPatterns
, numberSymbols
, currencySymbols
, typefaces
per le specifiche XFA descritte in <locale>
Impostazioni internazionali specifiche 🔗. Puoi anche vedere come viene definito per altre impostazioni internazionali supportate in /etc/clientlibs/fd/af/I18N/fr/javascript/i18n.js
.
LogMessages. jsdefinition guidelib.i18n.strings
e guidelib.i18n.LogMessages
per <locale>
come definito in /etc/clientlibs/fd/af/I18N/fr/javascript/LogMessages.js
.
js. txtcontenenti quanto segue:
i18n.js
LogMessages.js
Esegui questo passaggio solo se il <locale>
che stai aggiungendo non è compreso tra en
, de
, es
, fr
, it
, pt-br
, zh-cn
, zh-tw
, ja
, ko-kr
.
Crea un nodo nt:unstructured
languages
in etc
, se non è già presente.
Aggiungi una proprietà stringa con più valori languages
al nodo, se non è già presente.
Aggiungi i valori <locale>
predefiniti delle impostazioni internazionali de
, es
, fr
, it
, pt-br
, zh-cn
, zh-tw
, ja
, ko-kr
, se non già presenti.
Aggiungi <locale>
ai valori della proprietà languages
di /etc/languages
.
Il simbolo <locale>
verrà visualizzato in https://[server]:[port]/libs/cq/i18n/translator.html
.
Riavvia il server AEM per rendere effettive le impostazioni internazionali aggiunte.
Librerie client di esempio per aggiungere supporto per lo spagnolo