付録 B
国際化サポートを有効にする
この付録では、複数の言語を使用したり、英語以外の言語を表示したりするように Identity Manager を設定する方法について説明します。
アーキテクチャーの概要
表 B-1 Identity Manager の国際化のコンポーネント
|
ファイル
|
説明
|
|
WPMessages.properties
|
デフォルトのメッセージファイルは、$WSHOME/idm/web/WEB-INF/classes/com/waveset/msgcat にあります。 idmcommon.jar ファイルの一部として出荷されています。
メッセージテキストを英語で表示します。これは、Identity Manager のインストール動作をカスタマイズして変更しないかぎり、デフォルトでロードされます。
|
|
Waveset.properties
|
$WSHOME/config にあります。
複数言語のサポートを有効にするには、Internationalization.enabled を true に設定する必要があります (デフォルトは true)。
|
|
System Configuration オブジェクト
|
カスタムメッセージカタログを指定します。
|
|
サポートされる各言語の追加のメッセージファイル
|
サポートされる追加の言語には、それぞれ独自のメッセージファイルが必要です。WPMessages_xx_XX.properties (ここで、xx は言語を表し、XX は国を表す。)たとえば、WPMessages_en_US.properties には、アメリカ英語のメッセージが含まれています。各国際化カタログには独自の .jar があります。
|
|
|
注
|
- 新しいカタログをデフォルトカタログと同じ名前を使用した /config にロードした場合、その新しいカタログはデフォルトより優先されます。
- 複数のメッセージファイルがある場合は、catalogname:keyname を指定して、メッセージキーを取得するカタログを指定できます。
|
|
次のカタログエントリでは、製品名の表示方法が制御されます。
PRODUCT_NAME=Identity Manager
LIGHTHOUSE_DISPLAY_NAME=[PRODUCT_NAME]
LIGHTHOUSE_TYPE_DISPLAY_NAME=[PRODUCT_NAME]
LIGHTHOUSE_DEFAULT_POLICY=Default [PRODUCT_NAME] Account Policy
一般的なエントリ
メッセージは、キーとテキストの組み合わせに含まれており、次の 3 つの部分で構成されます。
- テキスト文字列、またはキー。データを取得するためにコードで使用される識別子です。この必須コンポーネントは翻訳しないでください。このコンポーネントは製品設定で使用され、翻訳用のプレースホルダとして機能します。
- キーとテキストを区切る等号 (「=」)。このエントリは必須です。
- アプリケーションの実行時に表示されるデータを含む文字列。このエントリは翻訳されたものであり、ブラウザでページが描画されるときにキーの代わりに使用されます。
リソース配列の各行には 2 つの文字列が含まれています。各行の、引用符で囲まれた 2 番目の文字列を翻訳します。
翻訳対象の特定の文字列には、文字列が表示されるときに文字列に挿入されるデータ用の特殊コードが含まれています。たとえば、次の文字列を翻訳するとします。
UI_USER_CONNECT={0}, connected at 100 mbs
描画されたものは、「jfaux, connected at 100 mb」などとなります。
通常、翻訳文字列はブラウザ内に表示されるため、次に示すように、HTML タグを追加して文字列の書式を設定することをお勧めします。
_FM_ACCOUNT_ID_HELP=<b>Account ID</b><br>Enter a name for this
user.This field is required.
複数言語のサポートの有効化
Identity Manager 複数言語のサポートを有効にするには、このシナリオで説明する手順を使用します。
手順 1: ローカライズされたファイルをダウンロードしてインストールする
インストールの前に
ローカライズされたファイルをインストールする前に、次のタスクを実行します。
- Identity Manager をインストールします。詳細なインストール手順については、『Identity Manager インストール』を参照してください。
- アプリケーションサーバーの次のロケールが UTF-8 に設定されていることを確認します。
- アプリケーションサーバーインスタンス
- データベース
- Java 仮想マシン (JVM)
ロケールの設定に関する情報については、これらの製品のマニュアルを参照してください。
メッセージカタログファイルのダウンロード
Identity Manager ソフトウェアダウンロード Web サイトでは、次のローカライズ済みのメッセージカタログが提供されています。適切なメッセージカタログの jar ファイルをダウンロードし、そのファイルを WEB-INF/lib ディレクトリに配置します。
表 B-2 メッセージカタログファイル
|
ファイル名 (.zip)
|
言語
|
ロケール
|
|
IDM__8_0_l10n_de
|
ドイツ語
|
de_DE
|
|
IDM__8_0_l10n_es
|
スペイン語
|
es_ES
|
|
IDM__8_0_l10n_fr
|
フランス語 (フランスおよびカナダ)
|
fr_FR
|
|
IDM__8_0_l10n_it
|
イタリア語
|
it_IT
|
|
IDM__8_0_l10n_ja
|
日本語
|
ja_JP
|
|
IDM__8_0_l10n_ko
|
韓国語
|
ko_KR
|
|
IDM__8_0_l10n_pt
|
ポルトガル語 (ブラジル)
|
pt_BR
|
|
IDM__8_0_l10n_zh
|
簡体字中国語
|
zh_CN
|
|
IDM__8_0_l10n_zh_TW
|
繁体字中国語
|
zh_TW
|
ZIP ファイルを一時的な場所にダウンロードします。デフォルトでは、ZIP ファイルの内容は FileName¥IDM_8_0_l10n ディレクトリに抽出されます。ここで、FileName は、ZIP 拡張子を除いたダウンロードファイルの名前と一致します。
Zip ファイルの内容
抽出したすべての ZIP ファイルには次のものが含まれます。
- ローカライズされたメッセージカタログを含む JAR ファイル、ヘルプファイル、およびその他の重要なファイル。JAR ファイルの名前は IDM_7_0_l10n_Locale.jar です。
- 『Identity Manager ローカリゼーション README』
その他の翻訳物が利用できることもあります。
ローカライズされたファイルのインストール
次の手順を使用して、ローカライズされたファイルをアプリケーションサーバーにインストールします。
- JAR ファイルを、一時的な場所から IdentityManagerInstallation/WEB-INF/lib ディレクトリにコピーします。
手順 2: Waveset.properties ファイルを編集する
Waveset.properties ファイルを編集するには、次の処理を実行します。
- 任意のエディタで、IdentityManagerInstallation/config/
Waveset.properties ファイルを開きます。
- Internationalization.enabled プロパティーを true に変更します。
- 変更を保存してファイルを閉じます。
- Identity Manager を再起動するか、または次の場所にあるデバッグページで「Reload Properties」をクリックします。
http://host:port/idm/debug.url
匿名登録処理中に ASCII アカウント ID と電子メールアドレスを保守する
デフォルトでは、Identity Manager の匿名登録処理中に、employeeId のほかにユーザーが用意した名 (firstName) と姓 (lastName) を使用すると、accountId および emailAddress の値が生成されます。匿名登録処理では、電子メールアドレスとアカウント ID に ASCII 以外の文字が含まれる可能性があるため、国際的なユーザーは、匿名登録処理中に Identity Manager で ASCII アカウント ID と電子メールアドレスが保守されるように、EndUserRuleLibrary 規則を変更する必要があります。
匿名登録処理中に ASCII でアカウント ID と電子メールアドレスを保守するには、次の 2 つのステップに従います。
- 次の表で示すように、EndUserRuleLibrary の次の規則を編集します。
表 B-3 EndUserRuleLibrary 規則を編集する
|
編集する規則
|
編集の目的
|
|
getAccountId
|
employeeId のみを使用する (firstName と lastName を削除する)
|
|
getEmailAddress
|
employeeId のみを使用する (firstName、lastName、および「.」を削除する)
|
|
verifyFirstname
|
アジア人の 1 文字の名前を許可するように、長さのチェックを 2 から 1 に変更する
|
- EndUserAnonEnrollmentCompletionForm を編集して、getAccountId および getEmailAddress 規則への呼び出しから firstName および lastName 引数を削除します。