現在表示中:

ロケールの辞書について

アダプティブフォームのローカリゼーションは、次の 2 種類のロケールの辞書に基づいています。

フォームに固有の辞書

アダプティブフォームで使用されている文字列が含まれます。例えば、ラベル、フィールド名、エラーメッセージ、ヘルプの説明文などです。各ロケールごとに、XLIFF ファイルのセットの形で管理されています。次のアドレスでアクセスできます:http://<host>:<port>/libs/cq/i18n/translator.html.

グローバルの辞書

2 つのグローバル辞書があり、AEM クライアントライブラリで JSON オブジェクトの形で管理されています。これらの辞書にはデフォルトのエラーメッセージ、12 か月の名前、通貨シンボル、日付と時間のパターンなどが含まれます。これらの辞書は、CRXDe Lite の /etc/clientlibs/fd/af/I18N および /etc/clientlibs/fd/xfaforms/I18N にあります。これらの場所では、各ロケールごと別々のフォルダーが用意されています。グローバルの辞書は頻繁に更新されることはありません。各ロケールごとに別の JavaScript ファイルを保持することで、ブラウザーによりそれらがキャッシュされるため、同一サーバー上で異なるアダプティブフォームにアクセスする際に、ネットワーク帯域幅の使用量を減らすことができます。

アダプティブフォームのローカリゼーションの仕組み

アダプティブフォームがレンダリングされるときは、指定された順序で以下のパラメーターが参照され、リクエストされたロケールが識別されます。

  • リクエストパラメーター afAcceptLang
    afAcceptLangリクエストパラメーターを渡すことで、ユーザーの使用するブラウザーのロケールをオーバーライドし、ロケールを強制できます。例えば、次の URL は日本語ロケールでのフォームのレンダリングを強制します。
    http://[server]:[port]/<contextPath>/<formFolder>/<formName>.html?wcmmode=disabled&afAcceptLang=ja
  • ユーザー向けに設定されるブラウザーのロケールです。これは、Accept-Language ヘッダーを使用したリクエストで指定されます。
  • AEM のユーザー指定の言語設定です。

ロケールが識別されると、アダプティブフォームはフォームに固有の辞書を参照します。リクエストされたロケールでフォームに固有の辞書が見つからない場合、代わりに英語辞書(en)が使用されます。

リクエストされたロケールでクライアントライブラリが存在しない場合、ロケールに含まれる言語コードがクライアントライブラリに存在しないかチェックします。例えば、リクエストされたロケールが en_ZA(南アフリカ英語)でen_ZA用のクライアントライブラリが存在しない場合、アダプティブフォームは、en(英語)言語が存在する場合、このクライアントライブラリを使用します。ただし、どちらも存在しない場合、アダプティブフォームではenロケールの辞書が使用されます。

サポートされていないロケールにローカリゼーションのサポートを追加する

現在、AEM Forms がサポートしているアダプティブフォームコンテンツのロケールは、英語(en)、スペイン語(es)、フランス語(fr)、イタリア語(it)、ドイツ語(de)、日本語(ja)、ブラジルポルトガル語(pt-br)、中国語(zh-tn)、台湾中国語(zh-tw)、韓国語(ko-kr)です。サポートされているロケールでアダプティブフォームのローカリゼーションを有効にする詳細方法については、「アダプティブフォームのローカライズ」を参照してください。

GuideLocalizationService にロケールを追加する

  1. http://[server]:[port]/system/console/configMgrに移動します。
  2. Guide Localization Serviceをクリックしてコンポーネントを編集します。
  3. 追加するロケールを、サポート対象のロケールの一覧に追加します。
GuideLocalizationSevice

XFA クライアントライブラリをロケール用に追加する

カテゴリ xfaforms.I18N で、etc/<folderHierarchy>の下に cq:ClientLibraryFolder タイプのノードを作成します。<locale>。次にクライアントライブラリに次のファイルを追加します。

  • /etc/clientlibs/fd/xfaforms/I18N/ja/I18Nで定義されたとおり、<locale>xfalib.locale.Strings を定義する I18N.js ファイル。
  • 以下を含む js.txt ファイル。
/etc/clientlibs/fd/xfaforms/I18N/Namespace.js
I18N.js
/etc/clientlibs/fd/xfaforms/I18N/LogMessages.js

アダプティブフォームのクライアントライブラリをロケール用に追加する

cq:ClientLibraryFolder タイプのノードを etc/<folderHierarchy> の下に作成します。これは、カテゴリが guides.I18N. で、<locale> xfaforms.I18N.<locale> guide.common および xfaforms.3rdparty と依存関係を持っています。

クライアントライブラリに次のファイルを追加します。

  • <locale> 用の guidelib.i18n を定義する「calendarSymbols」のパターンを持つ i18n.jsdatePatternstimePatternsdateTimeSymbolsnumberPatternsnumberSymbolscurrencySymbolstypefaces ファイル。これらはロケールセットの仕様に記載されている XFA 仕様に従ってください。また、サポート対象の他のロケールがどのように定義されているか、/etc/clientlibs/fd/af/I18N/fr/javascript/i18n.jsで確認することができます。
  • <locale>用の、guidelib.i18n.strings を定義する LogMessages.js、および guidelib.i18n.LogMessages ファイル。これらは /etc/clientlibs/fd/af/I18N/fr/javascript/LogMessages.js の定義に従ってください。
  • 以下を含む js.txt ファイル。
i18n.js
LogMessages.js

辞書のロケールサポートを追加する

追加する <locale> が、endeesfritpt-brzh-tnzh-twjako-kr 以外の場合に次の手順を実行してください。

  1. すでに存在しない場合は、etc の下に、nt:unstructured ノードの languages を作成します。
  2. すでに存在しない場合は、複数の値を持つ文字列プロパティ languages をノードに追加します。
  3. すでに存在しない場合は、<locale> デフォルトのロケール値、deesfritpt-brzh-tnzh-twjako-kr を追加します。
  4. /etc/languageslanguages プロパティの値に <locale> を追加します。

<locale>http://[server]:[port]/libs/cq/i18n/translator.html に表示されます。

サーバーの再起動

追加したロケールを有効にするために AEM サーバーを再起動します。

スペイン語サポートを追加する場合のサンプルライブラリ

ダウンロード

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー