Java Desktop System Configuration Manager Release 1.1 開発者ガイド

ローカライズ

テンプレートで定義した文字列は、すべてローカライズすることが重要です。ローカライズした文字列はリソースファイルから取得されます。resImportapt:template 要素のサブ要素で、1 つまたは複数のリソースファイルをテンプレートにバインドするために使用されます。次の例のように、リソースの完全修飾パスとそのベース名を指定する必要があります。

<apt:template>
<resImport
  apt:packagePath="com.sun.star.apoc.policies.resource.starsuite"/>

使用するリソースキーを定義するには、キーの名前を apt:label 属性の値として提供します。次はその例です。

<property apt:name="HTTPProxy" apt:label="SO.internet.proxy.name"
          apt:dataPath="org.openoffice.Inet/Settings/ooInetHTTPProxyName"
          oor:type="xs:string">

Configuration Manager は、テンプレートに結合されているすべてのリソースから、apt:label 属性で指定されているキーを最初に探します。キーが見つからない場合は、apt:label 属性が表示されます。キーが見つかった場合は、リソースファイルから該当する値が取り出されて表示されます。

文字列の取得元となるリソースファイルは、Java に定義されているメカニズムと同様の方法で決定されます。すなわち、resImport 要素で指定されているパッケージのパスと、Web ブラウザで指定されている言語によって、選択されるリソースファイルが決まります。たとえば、ブラウザで選択されている Web ページの言語が en_US で、resImport 要素で指定されているパッケージのパスが com.sun.star.apoc.policies.resource.starsuite とすると、Configuration Manager は以下のファイルの順に検索してリソースキーを探します。

./res/com/sun/star/apoc/policies/resource/starsuite_en_US.properties

./res/com/sun/star/apoc/policies/resource/starsuite_en.properties

./res/com/sun/star/apoc/policies/resource/starsuite.properties

Configuration Manager では、ローカルのポリシーパッケージにあるファイルが先に検索されます ( 「ポリシーパッケージ形式」を参照)。見つからない場合は、その他のすべてのパッケージが検索されます。この方法を用いると、ほかのパッケージですでにローカライズされている文字列、特にカテゴリ名を再利用できます。

リソース検索の詳細は、Java ResourceBundle の API 仕様を参照してください。


ヒント –

Sun Web Console のアプリケーションはすべて、ログイン中に言語を判別します。アプリケーションに別の言語を使用させるには、いったんログアウトする必要があります。そのあとブラウザで Web ページの言語を変更してから、もう一度ログインします。


オンラインヘルプもローカライズする必要があります。Configuration Manager は、リソースファイルと同じルールに従って HTML ファイルを選択しますが、例外として、ヘルプファイルの場合はローカルのポリシーパッケージのみが検索されます。たとえば、HTML ファイルのパスとして /StarSuite/Internet/Proxy、ブラウザで en_US を指定すると、Configuration Manager はオンラインヘルプファイル ./web/StarSuite/Internet/Proxy_en_US.html を表示します。