Oracle® Fusion Middleware Oracle Application Development Frameworkデスクトップ統合開発者ガイド 11gリリース1(11.1.1.6.0) B66694-01 |
|
前 |
次 |
この章では、統合Excelワークブックを開発する際の国際化の問題、リソース・バンドルの使用方法、統合Excelワークブックのローカライズ方法について説明します。
この章の内容は次のとおりです。
ADFデスクトップ統合には、統合Excelワークブックを国際化されたFusion Webアプリケーションの一部として提供できるようにするいくつかの特徴があります。主な特徴の1つに、設計時にOracle ADFコンポーネントに表示される、ユーザーが参照可能な文字列のローカライズを管理するリソース・バンドルの使用があります。また、実行時にこれらのコンポーネントに表示されるユーザーが参照可能な文字列を管理するために、リソース・バンドルが使用されます。この章では、リソース・バンドルの使用についても説明します。
統合Excelワークブックでの国際化とローカライズに関して、次の点に注意してください。
国際化されたデータ
ADFデスクトップ統合は、シングルバイトとダブルバイトのキャラクタ・セットをサポートします。ExcelワークシートとFusion Webアプリケーションとの間で送信されるデータを、XMLペイロードにマーシャリングします。これらのXMLペイロードでは、正規化されたフォーマットの日付、時間および数字でUTF-8エンコーディングが使用されます。
ロケール
Excelワークブックを使用するシステムのロケールにより、日付、時間および数字のフォーマットが決まります。これらの設定(システムのフォーマットとロケール)は、Fusion Webアプリケーションで使用される設定と異なる場合があります。ADFデスクトップ統合はこれらの設定を同期しませんが、データの整合性が保持されるように徹底します。ADFデスクトップ統合には、実行時に統合ExcelワークブックのOracle ADFコンポーネントの言語や表示設定をエンド・ユーザーが変更するためのメカニズムがありません。
スタイルを構成したり、統合ExcelワークブックのADFコンポーネントに適用する場合、ロケールに依存するスタイルを構成または選択してください。詳細は、9.2項「スタイルの使用」を参照してください。
Fusion Webアプリケーションの国際化の詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Webユーザー・インタフェース開発者ガイド』の「ページの国際化とローカライズ」の章を参照してください。
ADFデスクトップ統合はリソース・バンドルを使用して、設計時と実行時にExcelワークブックのADFコンポーネントに表示される、ユーザーが参照可能な文字列を管理します。JDeveloperは、リソース・バンドルをADFデスクトップ統合プロジェクトに格納します。
統合Excelワークブックで定義する文字列を含むリソース・バンドルを最高20まで登録できます。リソース・バンドルは、1MBを超えることはできません。20を上回るリソース・バンドル、または1MBを超えるリソース・バンドルを登録しようとすると、ADFデスクトップ統合はクライアント・サイド・ログ・ファイルに警告を書き込み、以降のリソース・バンドルあるいは1MBの上限に達した後のリソース・バンドルの登録を停止します。
たとえば、リソース・バンドルAが2MBで、リソース・バンドルBが1MBの場合、ADFデスクトップ統合はリソース・バンドルAの最初の1MB分のデータと、リソース・バンドルBのすべてのデータを登録します。クライアント・サイド・ロギングの詳細は、C.3.2項「クライアント・サイド・ロギングの概要」を参照してください。
Resources
ワークブック・プロパティは、統合Excelワークブックが使用できるリソース・バンドルを指定します。このプロパティでは、統合Excelワークブックでのリソース・バンドル(ResourceBundle[] Array
)の配列を指定します。配列の各要素には、リソース・バンドルを一意に識別するプロパティ(Alias
)と、JDeveloperデスクトップ統合プロジェクトのリソース・バンドルへのパスを識別するプロパティ(Class
)があります。たとえば、Master Price ListモジュールのEditPriceList-DT.xlsx
は、次のClass
プロパティの値を持つres
リソース・バンドルを参照します。
oracle.fodemo.masterpricelist.resources.UIStrings
Resources
ワークブック・プロパティの詳細は、A.12項「ワークブックのアクションとプロパティ」を参照してください。
デフォルトでは、ADFデスクトップ統合に予約済のリソース・バンドルがあり、これが多くのコンポーネント・プロパティによって実行時に使用される文字列のキー値を提供します。Fusion Webアプリケーションと統合するようにExcelワークブックを有効化すると、予約済リソース・バンドルはデフォルトでそのワークブックに登録されます。ADFデスクトップ統合は、_ADFDIres
の値を使用して、このリソース・バンドルを一意に識別します。多くのEL式が、このリソース・バンドルの文字列の値を参照します。たとえば、次のEL式はWorkbookMenuItems
のLogin
ボタンのLabel
プロパティのデフォルト値です。
#{_ADFDIres['TOOLBAR_MENU_CMD_LOGIN']}
上の例では、_ADFDIres
は予約済のリソース・バンドルを識別し、TOOLBAR_MENU_CMD_LOGIN
がリソース・バンドルの文字列(Login...
)を識別して実行時にLogin
ボタンに使用するためのキーです。
別のリソース・バンドルを登録する場合、_ADFDIres
リソース・バンドルから割り当てられたデフォルトの文字列のキー値を、ADFコンポーネント・プロパティの多くに置換できます。
ResourceBundleコレクション・エディタを使用して要素をResourceBundle[] Array
に追加することにより、リソース・バンドルを登録します。
リソース・バンドルを登録する手順:
予約済のリソース・バンドルからの文字列キーは、統合Excelワークブックに登録したリソース・バンドルから文字列キーを指定することで置換できます。
予約済のリソース・バンドルからの文字列のキー値を置換する手順:
統合Excelワークブックを開きます。
「Oracle ADF」タブの「ワークブック・プロパティ」をクリックします。
実行時リボン・タブをクリックして、WorkbookMenuItem[] Arrayの入力フィールドの横にある省略記号ボタン(...)をクリックします。
Label
プロパティの入力フィールドの横にある省略記号ボタン(...)をクリックして、式ビルダーを起動します。
実行時に表示する文字列のキー値を取得するEL式を記述します。
図10-2は、EL式がリソース・バンドル(res
)で定義された文字列キー(key_Login
)を参照する例を示します。このEL式は、_ADFDIres
リソース・バンドルの文字列キーを参照するデフォルトのEL式を置換します。
「OK」をクリックします。
この上書き可能なリソースには、ユーザーが参照可能な実行時の文字列がいくつか含まれます。これらは、ADFデスクトップ統合コンポーネントのプロパティを構成しても、置換できません。例として、図7-5に示すようなデフォルトのアップロード・ダイアログに表示される文字列があげられます。
これらのユーザーが参照可能な実行時の文字列を置換するには、ADFデスクトップ統合がサポートしている上書き可能なリソースからの文字列キーを含むFusion Webアプリケーションにリソース・バンドルを作成します。付録F「上書き可能なリソースの文字列キー」に、これらの文字列キーの一覧があります。作成するリソース・バンドルで上書きする、付録Fに記載された文字列キーの値を定義します。
構成不可能なリソースを上書きする手順:
Fusion Webアプリケーションにリソース・バンドルを作成します。
リソース・バンドルの作成の詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Webユーザー・インタフェース開発者ガイド』の「ロケールとリソース・バンドルの定義」の項を参照してください。
付録F「上書き可能なリソースの文字列キー」に記載された文字列キーのリソース・バンドルに、実行時に表示する文字列のキー値を定義します。
手順1で作成したリソース・バンドルを登録する際に、_ADFDIres
をAliasプロパティの値に設定します。
リソース・バンドルの登録方法の詳細は、10.2.1項「統合Excelワークブックでのリソース・バンドルの登録方法」を参照してください。
表F-1に、ADFデスクトップ統合がサポートする上書き可能なリソースの文字列キーを示します。上書き可能な文字列キーごとに、英語の値列に記載された値に代わる値を指定します。
ADFデスクトップ統合は、作成したリソース・バンドルで定義した表F-1 に記載された文字列キーの値を取得します。これは、予約済のリソース・バンドルで作成したリソース・バンドルで定義しなかった他の文字列キーの値を取得します。
注意: LOGIN_WINDOW_TITLE またはLOGIN_CONFIRM_CONNECT_2 を上書きする値を指定すると、上書きの値はWebアプリケーションへの初回の接続では表示されません。初回の接続ではデフォルト値が使用されます。詳細は、10.2.2項「予約済リソース・バンドルからの文字列キー値の置換方法」"を参照してください。 |
統合Excelワークブックのリソース・バンドルに関する追加情報は、次の項を参照してください。
リソース・バンドルのタイプ
ADFデスクトップ統合は、次のタイプのリソース・バンドルの使用をサポートしています。
リソース・バンドルの詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Webユーザー・インタフェース開発者ガイド』の「手動によるロケールとリソース・バンドルの定義」の項を参照してください。
統合Excelワークブックのリソース・バンドルのキャッシング
ADFデスクトップ統合は、最初にFusion Webアプリケーションに接続するときに統合Excelワークブックが取得するリソース・バンドルからの文字列キーの値をキャッシュします。統合Excelワークブックが以前の値をキャッシュした後でリソース・バンドルの文字列のキー値を変更する場合、ClearAllData
ワークブック・アクションが起動されて、Fusion Webアプリケーションから変更された値を取得できるようにエンド・ユーザーがワークブックを閉じてから再び開かないかぎり、変更された値はワークブックに表示されません。ClearAllData
ワークブック・アクションの詳細は、表A-17を参照してください。
リソース・バンドルのEL式の構文
ADFデスクトップ統合では、次の例に示すように[]
文字を使用して、文字列のキー名をEL式で囲む必要があります。
#{res['StringKey']}
#{res.StringKey}
ADFデスクトップ統合は、広範なテクノロジのセットを統合しています。これらのテクノロジのそれぞれが、Fusion Webアプリケーションをローカライズするときに、自然な人間の言語の選択をコントロールする様々なオプションを提供します。
エンド・ユーザーが統合Excelワークブックと対話するときには、様々な要素が関係しています。これらの要素のひとつひとつに、サポートされる言語とリソース翻訳の独自のセットがあります。こうしたシナリオでは、言語の翻訳はそれぞれのパブリッシャの役割です。
表10-1は、関係する要素および翻訳におけるそれらの役割の概要を示します。
表10-1 ローカライズの概要
ローカライズの対象 | 使用する言語の決定 |
---|---|
Microsoftオペレーティング・システム |
オペレーティング・システムの設定。コントロール パネルの地域の設定から言語を選択できます。 |
Microsoft Office |
Microsoft Officeの言語の設定 |
ADFデスクトップ統合のダイアログ・アクションで表示されるWebページ |
通常はMicrosoft Internet Explorerの言語設定により制御されます。 |
ADFデスクトップ統合のクライアント・リソース |
Microsoft Officeの言語の設定 |
ADFデスクトップ統合のサーバー・リソース |
Microsoft Internet Explorerの言語設定 |
ADFデスクトップ統合のカスタム・リソース・バンドル |
Microsoft Internet Explorerの言語設定 |
図10-3は、Fusion Webアプリケーションに関わる様々な要素が翻訳でどのような役割を果すかを示します。
ADFデスクトップ統合でのローカライズの詳細は、OTNの『Oracle ADF 11g Desktop Integration Localization whitepaper』を参照してください。
http://www.oracle.com/technetwork/developer-tools/jdev/adfdi-localization-129807.pdf