La localizzazione dei moduli adattivi si basa su due tipi di dizionari di lingua:
Dizionario specifico per il moduloContiene le stringhe utilizzate nei moduli adattivi. Ad esempio, etichette, nomi di campi, messaggi di errore, descrizioni della guida e così via. È gestito come un set di file XLIFF per ogni lingua e può essere utilizzato all'indirizzo https://<host>
:<port>
/libs/cq/i18n/translator.html.
Dizionari globaliNella libreria AEM client sono presenti due dizionari globali, gestiti come oggetti JSON. Questi dizionari contengono messaggi di errore predefiniti, nomi dei mesi, simboli di valuta, pattern di data e ora e così via. Questi dizionari sono disponibili in CRXDe Lite all'indirizzo /libs/fd/xfaforms/clientlibs/I18N. Questi percorsi contengono cartelle separate per ogni impostazione internazionale. Poiché in genere i dizionari globali non vengono aggiornati frequentemente, il mantenimento di file JavaScript separati per ciascuna lingua consente ai browser di memorizzarli nella cache e di ridurre l'utilizzo della larghezza di banda di rete quando accedono 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, potete passare il parametro di richiesta afAcceptLang
per imporre le impostazioni internazionali. Ad esempio, con il seguente URL sarà necessario eseguire il rendering del modulo in lingua giapponese:
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 del modulo. Se il dizionario specifico del modulo per le impostazioni internazionali richieste non viene trovato, viene utilizzato il dizionario inglese (en).
Se non esiste una libreria client per l'impostazione internazionale richiesta, essa cerca una libreria client per 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 alcuna, il modulo adattivo utilizza il dizionario per le en
impostazioni internazionali.
AEM Forms supporta attualmente la localizzazione di contenuti di moduli adattivi in inglese (en), spagnolo (es), francese (fr), italiano (it), tedesco (de), giapponese (ja), portoghese-brasiliano (pt-BR, cinese-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:
Aggiunta di un'impostazione internazionale al servizio GuideLocalizationService
Aggiunta di una libreria client di moduli adattivi per una lingua
Aggiunta del supporto per le impostazioni internazionali per il dizionario
https://[server]:[port]/system/console/configMgr
.Create un nodo di tipo cq:ClientLibraryFolder
in etc/<folderHierarchy>
, con categoria xfaforms.I18N.<locale>
, e aggiungete i seguenti file alla libreria client:
I18N. jsdefinizione xfalib.locale.Strings
per l'oggetto <locale>
come definito in /etc/clientlibs/fd/xfaforms/I18N/ja/I18N
.
js. text contenente quanto segue:
/libs/fd/xfaforms/clientlibs/I18N/Namespace.js
I18N.js
/etc/clientlibs/fd/xfaforms/I18N/LogMessages.js
Create un nodo di tipo cq:ClientLibraryFolder
in etc/<folderHierarchy>
, con la categoria guides.I18N.<locale>
e le dipendenze come xfaforms.3rdparty
, xfaforms.I18N.<locale>
e guide.common
. "
Aggiungete i seguenti file alla libreria client:
i18n. jsdefinendo guidelib.i18n
, con pattern di "CalendarSymbol", datePatterns
, timePatterns
, dateTimeSymbols
, numberPatterns
, numberSymbols
, currencySymbols
per il typefaces
<locale>
modello come indicato nelle specifiche XFA descritte inImpostazioni internazionali specifiche set. È inoltre possibile vedere come viene definito per altre impostazioni internazionali supportate in /etc/clientlibs/fd/af/I18N/fr/javascript/i18n.js
.
LogMessages. jsdefinizione guidelib.i18n.strings
e guidelib.i18n.LogMessages
per l'oggetto <locale>
come definito in /etc/clientlibs/fd/af/I18N/fr/javascript/LogMessages.js
.
js. text contenente quanto segue:
i18n.js
LogMessages.js
Eseguire questo passaggio solo se il <locale>
che si sta aggiungendo non è compreso tra en
, de
, es
, fr
, it
, pt-br
, zh-cn
, zh-tw
, ja
, ko-kr
.
Create un nodo nt:unstructured
languages
in etc
, se non già presente.
Aggiungete al nodo una proprietà stringa con più valori languages
, se non già presente.
Se non è già presente, aggiungere i valori <locale>
delle impostazioni internazionali predefinite de
, es
, fr
, it
, pt-br
, zh-cn
, zh-tw
, ja
, ko-kr
.
Aggiungete il simbolo <locale>
ai valori della proprietà languages
di /etc/languages
.
Il simbolo <locale>
verrà visualizzato in https://[server]:[port]/libs/cq/i18n/translator.html
.
Riavviate il server AEM per rendere effettive le impostazioni internazionali aggiunte.
Esempi di librerie client per aggiungere supporto per lo spagnolo