ログ・リソース・バンドルおよびメッセージ・ファイルの作成
WebSphere® Application Server の内部ログに書き込まれるメッセージは、他の表示用プロセスに転送することができます。管理コンソールに表示されるメッセージは、管理コンソールがサーバー・プロセスとは別の場所で稼働している可能性があるので、実行時バインディング・プロセスを使用してローカライズすることができます。 実行時バインディングとは、WebSphere Application Server がログへの記録時にメッセージのローカライズを行わず、メッセージを表示するプロセスまでローカライズを遅らせることを意味します。
このタスクについて
メッセージを受け入れるメソッドはすべて、これらのメッセージをローカライズします。 ローカライズされるメッセージを提供するためのメカニズムが、 IBM® Developer Kit, Java™ Technology Edition で提供されるリソース・バンドル・サポートです。 Developer Kit が実装するリソース・バンドルについて知識がない場合は、 各種のテキストから、あるいは java.util.ResourceBundle、java.util.ListResourceBundle、java.util.PropertyResourceBundle、および java.text.MessageFormat の各クラスの API ドキュメンテーションを参照して、詳細な情報を得ることができます。
PropertyResourceBundle クラスは、優先的に使用されるメカニズムです。
メッセージを正しくローカライズするには、表示プロセスに、メッセージ・テキストが保管されるリソース・バンドルに対するアクセス権がなければなりません。 リソース・バンドルはアプリケーションとは別にパッケージ化し、表示プロセスがアクセスできる場所にインストールする必要があります。
デフォルトでは、WebSphere Application Server ランタイムは、ログに記録されるときに、 すべてのメッセージをローカライズします。 このローカライズにより、異なるロケーションでローカライズする必要がない限り、 .jar ファイルをアプリケーションに渡す必要がなくなります。 ただし、早期バインディング手法を使用すると、メッセージがログに記録されるときにローカライズすることができます。 早期バインディングを使用するアプリケーションは、 メッセージをログに記録する前に、まずローカライズする必要があります。 アプリケーションは、リソース・バンドル内でローカライズしたテキストを検索し、メッセージをフォーマットします。 早期バインディング手法を使用して、 アプリケーションとともにそのリソース・バンドルをパッケージしてください。
リソース・バンドルを作成するには、以下のステップを実行します。
手順
例
リソース・バンドルを作成するには、いくつかの方法があります。 最も簡単かつ優れた方法は、プロパティー・リソース・バンドルをサポートするプロパティー・ファイルを作成することです。 この例では、そのようなプロパティー・ファイルの作成方法を示します。
このサンプルには、4 つのローカライズ可能なメッセージがあります。 プロパティー・ファイルが作成され、キーと値のペアが挿入されます。 通常のプロパティー・ファイルの規則はすべて、このファイルに適用されます。 さらに、作成者は、Java MessageFormat クラスの値に関するその他の制約事項にも注意する必要があります。 例えば、アポストロフィはエスケープする必要があり、これを使用すると、問題が発生します。 移植できない文字は使用しないようにしてください。 WebSphere Application Server は、{1, date} や {0,number, integer} などの、MessageFormat クラスがサポートする拡張フォーマット規則の使用をサポートしていません。
このリソース・バンドルを使用するアプリケーションの 基本ディレクトリーが baseDir で、このディレクトリーはクラスパスにあるとします。 プロパティー・ファイル は、クラスパスには存在しないサブディレクトリー baseDir (baseDir/subDir1/subDir2/resources) に保管されるとします。 メッセージ・ファイルが解決できるようにするためには、subDir1.subDir2.resources.DefaultMessage の名前を使用して、プロパティー・リソース・バンドルを識別し、メッセージ・ロガーへ渡します。
このサンプルでは、 プロパティー・ファイルは DefaultMessages.properties という名前になります。
# Contents of the DefaultMessages.properties file
MSG_KEY_00=A message with no substitution parameters.
MSG_KEY_01=A message with one substitution parameter: parm1={0}
MSG_KEY_02=A message with two substitution parameters: parm1={0}, parm2 = {1}
MSG_KEY_03=A message with three parameter: parm1={0}, parm2 = {1}, parm3={2}
DefaultMessages.properties ファイルを作成したら、 このファイルをローカライズ・バージョンが生成される変換センターへ送信できます。