java.util.ResourceBundle
クラスの標準Struts実装の1つは、PropertyResourceBundle
クラスです。この実装により、Strutsに基づくWebアプリケーションは、「name=value」構文を使用してリソースを定義できます。JDeveloperでは、StrutsをサポートするWebアプリケーションを作成する際に、Webアプリケーションで使用されるすべての文字列メッセージとともにリソース・バンドルを用意する .properties
ファイル(ApplicationResources.properties
)がプロジェクトに追加されます。これらのメッセージはテキスト指向であるため、このファイルはアプリケーションの国際化に理想的です。
たとえば、package com.mycompany.mypackage
で作成されたため、ソース・コードがcom/mycompany/mypackage
という名前のディレクトリ(ソース・ディレクトリからの相対)に格納されるとします。com.mycompany.mypackage.MyResources
というリソース・バンドルを作成するには、com/mycompany/mypackage
ディレクトリに次のファイルを作成します。
MyResources.properties
: サーバーのデフォルト言語のメッセージを格納します。デフォルト言語が英語の場合は、次のようなエントリがあります。prompt.hello=Hello
MyResources_xx.properties
: 同じメッセージを、ISO言語コードが「xx
」である言語で格納します(最新リストへのリンクは、ResourceBundleのJavadocページを参照してください)。上に示したメッセージのフランス語バージョンとして、prompt.hello=Bonjour
エントリがあります。リソース・バンドル・ファイルは、必要に応じていくつの言語でも持つことができます。
Webアプリケーション・デプロイメント・ディスクリプタにサーブレット・コントローラを構成する場合は(web.xml
ファイルを参照)、アプリケーションのリソース・バンドルを指定する初期化パラメータを定義します。たとえば、ビジネス・コンポーネントStruts JSPアプリケーション・ウィザードで生成されるデフォルトの .properties
ファイルでは、値はmypackage.ApplicationResources
になり、web.xml
ディスクリプタは次のようになります。
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>application</param-name>
<param-value>mypackage.ApplicationResources</param-value>
</init-param>
<.../>
</servlet>
注意: JDeveloperは、ApplicationResources.properties
ファイルをWebアプリケーションのソース・フォルダに格納します。これにより、アプリケーション値をmypackage.ApplicationResources
に簡略化できます。ファイルをソース・フォルダの外部に移動する場合は、リソース・バンドル・パッケージ名(mypackage.ApplicationResources
)がアプリケーションのクラスパスにあることを確認する必要があります。
JDeveloperでのStrutsサポートについて
WebアプリケーションでのStrutsフレームワークについて
Struts構成ファイルについて