この章の項目は次のとおりです。
グローバル・インターネット・アプリケーションでは、ユーザーのロケールを認識する必要があります。
日付書式などロケールに依存する機能は、C/C++、JavaおよびPL/SQLなどのプログラミング環境に組み込まれています。アプリケーションでは、ロケールに依存する機能を使用して、ユーザーのロケールの文化的な慣習に従いHTMLページをフォーマットできます。
プログラミング環境によって、ロケールの表記方法は異なります。たとえば、フランス語(カナダ)のロケールは次のように表記します。
環境 | 表記 | ロケール | 説明 |
---|---|---|---|
各種 | ISO規格 | fr-CA
|
fr はISO 639規格で定義された言語コードです。CA はISO 3166規格で定義された国コードです。
|
Java | Javaロケール・オブジェクト | fr_CA
|
Javaでは、ISOの言語コードおよび国コードを使用します。 |
C/C++ | POSIXロケール名 | Sun Solarisの場合fr_CA
|
POSIXロケール名には、デフォルトのキャラクタ・セットよりも優先されるキャラクタ・セットが含まれる場合があります。たとえば、de.ISO8859-15ロケールはユーロ記号をサポートするために使用されます。 |
PL/SQLおよびSQL | NLS_LANGUAGE およびNLS_TERRITORY パラメータ
|
NLS_LANGUAGE="CANADIAN FRENCH"
|
関連項目: 第6章の「NLS_LANGパラメータの構成」 |
表2-1は、一般に使用されるロケールがプログラミング環境によって表記方法が異なることを示しています。
表2-1 各プログラミング環境でのロケール表記
ロケール | ISO | Java | POSIX Solaris | NLS_LANGUAGE、NLS_TERRITORY |
---|---|---|---|---|
アラビア語(アラブ首長国連邦) |
ar |
ar |
ar |
ARABIC、UNITED ARAB EMIRATES |
中国語(中国) |
zh-CN |
zh_CN |
zh_CN |
SIMPLIFIED CHINESE、CHINA |
中国語(台湾) |
zh-TW |
zh_TW |
zh_TW |
TRADITIONAL CHINESE、TAIWAN |
英語(アメリカ合衆国) |
en |
en_US |
en_US |
AMERICAN、AMERICA |
英語(イギリス) |
en-GB |
en_GB |
en_UK |
ENGLISH、UNITED KINGDOM |
フランス語(カナダ) |
fr-CA |
fr_CA |
fr_CA |
CANADIAN FRENCH、CANADA |
フランス語(フランス) |
fr |
fr_FR |
fr |
FRENCH、FRANCE |
ドイツ語(ドイツ) |
de-DE |
de_DE |
de |
GERMAN、GERMANY |
ギリシャ語 |
el |
el |
el |
GREEK、GREECE |
ヘブライ語 |
he |
he |
he |
HEBREW、ISRAEL |
イタリア語(イタリア) |
it |
it |
it |
ITALIAN、ITALY |
日本語 |
ja-JP |
ja_JP |
ja_JP |
JAPANESE、JAPAN |
韓国語 |
ko-KR |
ko_KR |
ko_KR |
KOREAN、KOREA |
ポルトガル語(ブラジル) |
pt-BR |
pt_BR |
pt_BR |
BRAZILIAN PORTUGUESE、BRAZIL |
ポルトガル語(ポルトガル) |
pt |
pt |
pt |
PORTUGUESE、PORTUGAL |
スペイン語(スペイン) |
es-ES |
es_ES |
es |
SPANISH、SPAIN |
タイ語 |
th |
th |
th |
THAI、THAILAND |
トルコ語 |
tr |
tr |
tr |
TURKISH、TURKEY |
複数のプログラミング環境のためにアプリケーションを作成する場合は、各環境のロケールを同期化する必要があります。たとえば、PL/SQLプロシージャをコールするJavaアプリケーションでは、PL/SQLプロシージャをコールする前に、Javaロケールを該当するNLS_LANGUAGE
およびNLS_TERRITORY
の値に対応付け、ユーザーのロケールに合せてパラメータ値を変更する必要があります。
アプリケーションの全体的なロケール認識には、アプリケーションを作成する開発環境およびアプリケーションを構築するターゲット・アーキテクチャの2つが影響します。この章では、単一言語および多言語のアプリケーション・アーキテクチャでのロケール認識について説明します。
単一言語インターネット・アプリケーションでのユーザーのロケールの決定
単一言語アプリケーションは、定義上、ユーザーに1つのロケールを提供します。ユーザーのロケールは、単一言語アプリケーションで固定され、プログラミング環境のデフォルトの実行時ロケールと同じです。
ほとんどのプログラミング環境では、ロケールに依存するほぼすべての関数がデフォルトの実行時ロケールを暗黙的に使用して、処理を実行します。単一言語アプリケーションでこれらの関数をコールすると、このような動作に依存した処理を実行できます。
多言語インターネット・アプリケーションでのユーザーのロケールの決定
多言語アプリケーションの場合、ユーザーのロケールは異なります。多言語アプリケーションでは、次の項目を実行できる必要があります。
ユーザーのロケールの動的検出
ロケール言語でのHTMLコンテンツの構成
ロケールによって想定される文化的な慣習の採用
多言語アプリケーションでは、次の方法でユーザーのロケールを動的に決定します。
Oracle Internet DirectoryなどのLDAPディレクトリ・サーバーのユーザー・プロファイル情報に基づく方法
アプリケーションは、Oracle Application Serverによって提供されるOracle Internet Directoryサーバーにユーザー・プロファイルを保存できます。ユーザー・プロファイル用のLDAPスキーマには、推奨ロケール属性を追加する必要があります。この方法は、ユーザーが以前にログオンしたことがない場合は機能しません。
すべてのHTTPリクエストは、Accept-Language HTTPヘッダーによってブラウザのデフォルトISOロケールを送信します。Accept-LanguageヘッダーがNULLの場合は、ロケールがデフォルトの英語になります。このアプローチの短所は、Accept-Languageヘッダーがユーザーのロケールについての信頼できる情報源にならない場合があることです。
ユーザーは、フラグなどのアイコンのリストやグループからロケールを選択できます。
ユーザーのロケールを決定するには、これらの方法を組み合せるかまたは単独で使用します。アプリケーションでロケールを特定した後に、ロケールに対して次のことを行う必要があります。
アプリケーションを実行するプログラミング環境に該当するロケール表記に対応付けます。
ロケールに依存する機能で使用します。
この項では、アプリケーションを作成する特定のプログラミング言語および開発環境でのロケール認識について説明します。
Javaロケール・オブジェクトでは、該当するユーザーのロケールをJavaで表記します。ロケール用のJavaエンコーディングは、Java文字列とバイト・データを正しく変換するために必要になります。
Javaコードにユーザーのロケールを認識させる場合は、ロケール用のJavaエンコーディングについて検討します。JavaメソッドをJavaロケールとJavaエンコーディングに依存させるには、次の2種類の方法があります。
メソッドに対してデフォルトJavaロケールおよびデフォルトJavaエンコーディングを使用する方法
メソッドに対してJavaロケールおよびJavaエンコーディングを明示的に指定する方法
単一言語Javaアプリケーションでのロケール認識
単一言語アプリケーションは、デフォルトのJavaロケールとデフォルトのJavaエンコーディングで暗黙的に実行し、別のロケールに対して容易に構成できるようにする必要があります。たとえば、デフォルトのJavaロケールを使用する日付書式を作成するには、次に示すメソッドのコールを使用します。
DateFormat df = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL); dateString = df.format(date); /* Format a date */
多言語Javaアプリケーションでのロケール認識
多言語アプリケーションは、固定されたデフォルトのロケールやエンコーディングに依存しないように開発する必要があります。現行ユーザーのロケールに対応するJavaロケールとJavaエンコーディングを明示的に指定します。たとえば、ユーザーのロケールに対応するJavaロケール・オブジェクトを、getDateTimeInstance()
メソッド内のuser_locale
によって特定し、指定します。
DateFormat df = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL, user_locale); dateString = df.format(date); /* Format a date */
注意: 単一言語アプリケーションと多言語アプリケーションのコード例で唯一異なる点は、user_locale の有無です。
|
また、デフォルトのJavaエンコーディングを前提とするエンコーディング依存メソッドを使用しないでください。たとえば、多言語アプリケーションでは、エンコーディングに依存するString.getBytes()
メソッドを使用しないでください。そのかわりに、エンコーディングを引数として受け取るString.getBytes(String encoding)
メソッドを使用します。必ず、ユーザーのロケールに使用するエンコーディングを指定します。
次の理由から、デフォルトのロケールを変更するLocale.setDefault()
メソッドは使用しないでください。
すべてのスレッドに対してJavaのデフォルト・ロケールが変更され、スレッドに対するアプリケーションの信頼性がなくなります。
Javaのデフォルト・エンコーディングは変更されません。
Oracle Globalization Development Kit for Javaには、ロケール依存動作とOracleデータベースとの一貫性を保てる一連のJavaクラスが用意されています。このアプリケーション・フレームワークにより、ロケール決定メソッドを宣言的に使用できます。
PerlおよびC/C++では、国際化されたアプリケーションに対してPOSIXロケール・モデルを使用します。
PerlおよびC/C++の単一言語アプリケーションでのロケール認識
単一言語アプリケーションは、デフォルトのPOSIXロケールに依存します。これを構成するには、LC_ALL
環境変数の値を変更するか、オペレーティング・システムのロケールをWindowsの「コントロール パネル」で変更します。
デフォルトPOSIXロケールを実行するには、アプリケーションからsetlocale()
関数をコールして、デフォルトのロケールをLC_ALL
で定義されたロケールに設定し、その後strftime()
などのPOSIXロケールに依存する関数を使用する必要があります。setlocale()
関数は、現行プロセスとその関連スレッドすべてに影響を及ぼすので、あらゆるマルチスレッド・アプリケーションにおいて各スレッドで同一のPOSIXロケールを想定する必要があります。次の例では、デフォルトのロケールに固有の書式で現在の時間をPerlで取得しています。
use locale; use POSIX qw (locale_h); ... $old_locale = setlocale( LC_ALL, "" ); $dateString = POSIX::strftime( "%c", localtime()); ...
PerlおよびC/C++の多言語アプリケーションでのロケール認識
多言語アプリケーションでは、動的に特定されるロケールに依存する必要があります。setlocale()
関数をコールして、ロケールを初期化してからロケールに依存する関数をコールします。たとえば、次のCコードでは、user_locale
によって特定されたユーザーのロケールの書式で地方時を取得しています。
#include <locale.h> #include <time.h> ... const char *user_locale = "fr"; time_t ltime; struct tm *thetime; unsigned char dateString[100]; ... setlocale(LC_ALL, user_locale); time (<ime); thetime = gmtime(<ime); strftime((char *)dateString, 100, "%c", (const struct tm *)thetime)); ...
アプリケーションがC/C++やPerlで適切なロケールを動的に初期化するには、ユーザーのロケールをPOSIXロケール名に対応付ける必要があります。POSIXロケールは、オペレーティング・システムによって異なります。
PL/SQLプロシージャは、データベース・アクセス記述子(DAD)のNLS_LANG
パラメータによってロケールが初期化されたデータベース・セッションのコンテキストで実行されます。このNLS_LANG
パラメータは、トップレベルのグローバリゼーション・パラメータであるNLS_LANGUAGE
とNLS_TERRITORY
をデータベース・セッション用に指定します。NLS_SORT
やNLS_DATE_LANGUAGE
などのその他のグローバリゼーション・パラメータは、それぞれの値をトップレベルのパラメータから引き継ぎます。これらのグローバリゼーション・パラメータでは、データベース・セッションのロケールを定義します。
SQLおよびPL/SQL関数をロケールに依存させるには、2種類の方法があります。
現行のデータベース・セッションのグローバリゼーション・パラメータに基づいてロケールを設定する方法
グローバリゼーション・パラメータを明示的に指定する方法
関連項目:
グローバリゼーション・パラメータの詳細が記載されています。 |
SQLおよびPL/SQLの単一言語アプリケーションでのロケール認識
一般に、NLS_LANG
から引き継いだグローバリゼーション・パラメータの初期値は、単一言語のPL/SQLプロシージャに対して問題はありません。たとえば、次のPL/SQLコードでは、TO_CHAR()
関数をコールしてフォーマットされた日付を取得し、NLS_DATE_FORMAT
およびNLS_DATE_LANGUAGE
パラメータの現行値を使用しています。
mydate date; dateString varchar2(100); ... select sysdate into mydate from dual; dateString = TO_CHAR(mydate);
グローバリゼーション・パラメータの初期値が適切でない場合は、ALTER SESSION
文を使用して、現行データベース・セッションの値を上書きします。ALTER SESSION
文は、DBMS_SQL
パッケージとともに使用します。たとえば、次のように設定します。
cur integer; status integer; ... cur := dbms_sql.open_cursor; dbms_sql.parse(cur, 'alter session set nls_date_format = "Day Month, YYYY"', dbms_sql.native); status := dbms_sql.execute(cur);
SQLおよびPL/SQLの多言語アプリケーションでのロケール認識
多言語アプリケーションでは、ロケールに依存するあらゆるSQLやPL/SQL関数をコールする前に、ALTER SESSION
文を使用して、データベース・セッションのロケールをユーザーのロケールに変更する必要があります。ALTER SESSION
文は、DBMS_SQL
パッケージとともに使用します。たとえば、次のように設定します。
cur integer; status integer; ... cur := dbms_sql.open_cursor; dbms_sql.parse(cur, 'alter session set nls_language = "NLS_LANGUAGE_of_user_ locale"', dbms_sql.native); dbms_sql.parse(cur, 'alter session set nls_territory = "NLS_TERRITORY_of_ user_locale"', dbms_sql.native); status := dbms_sql.execute(cur);
または、引数としてグローバリゼーション・パラメータを受け取るすべてのSQL関数に対してアプリケーションでグローバリゼーション・パラメータを指定します。たとえば、次のPL/SQLコードでは、ユーザーのロケールの言語に基づいて日付文字列を取得しています。
mydate date;
dateString varchar2(100);
...
select sysdate into mydate from dual;
dateString TO_CHAR(mydate, 'DD-MON-YYYY HH24:MI:SSxFF',
'NLS_DATE_LANGUAGE=language' );
...
前述のコード例では、language
は、ユーザーのロケール用Oracle言語名を指定します。
この項では、特定のOracle Application Serverコンポーネントのアプリケーション開発でのロケール認識について説明します。
Oracle Application Server Wireless(OracleAS Wireless)は、リクエストの起動時に、すべてのモバイル・コンテキスト情報をHTTPヘッダーとして送信します。ユーザー・ロケールは、X-Oracle-User.Locale
ヘッダーを使用して送信されます。ロケール値には、ISO言語と、オプションでISO国コードがハイフンで区切られて含まれます。たとえば、「en-US」、「zh-CN」および「ja」は、すべてこのヘッダーの有効なロケール値です。Mobile Servicesアプリケーションでは、このヘッダーに指定したユーザー・ロケールを使用して、ユーザー・インタフェースで使用する言語および文化的慣習を特定する必要があります。
たとえば、JSPアプリケーションはユーザー・ロケールを次のように取得します。
<%
String userLocale = request.getHeader("X-Oracle-User.Locale");
%>
Oracle Application Server Forms Services(OracleAS Forms Services)のアーキテクチャは次のとおりです。
Javaクライアント(ブラウザ)
OracleAS Forms Services(中間層)
Oracleカスタマ・データベース(バックエンド)
Javaクライアントは、ユーザーがOracleAS Forms Servicesセッションを実行するときにOracle Application Serverから動的にダウンロードされます。Javaクライアントは、OracleAS Forms Services Runtime Engineのユーザー・インタフェースを提供します。さらに、項目間の移動またはチェック・ボックスの確認などのアクションに対するユーザーとの対話や視覚的なフィードバックも行います。
OracleAS Forms Servicesは、OracleAS Forms Services Runtime EngineおよびForms Listener Servletで構成されています。OracleAS Forms Services Runtime Engineは、Javaクライアントにかわってデータベースへの接続を維持するプロセスです。Forms Listener Servletは、Javaクライアント・プロセスから接続リクエストを取得したり、Javaクライアント・プロセスのかわりにOracleAS Forms Servicesのランタイム・プロセスを開始したりするブローカーとして機能します。
OracleAS Forms ServicesのNLS_LANG
パラメータは、OracleAS Forms Servicesのロケールを初期化します。NLS_LANGUAGE
パラメータは、NLS_LANG
からその値を取得し、OracleAS Forms Servicesメッセージの言語を決定します。また、NLS_TERRITORY
パラメータもNLS_LANG
からその値を取得し、日付や通貨形式などの規則を定めます。
デフォルトでは、OracleAS Forms ServicesのNLS_LANG
パラメータは、Javaクライアントのロケールを初期化します。Javaクライアントのロケールは、デフォルトのメッセージや一部のメニュー文字列のボタン・ラベルなどを決定します。
関連項目: 『Oracle Application Server Forms Services利用ガイド』 |
単一言語OracleAS Forms Servicesアプリケーションでのロケール認識
ユーザーのロケールは、単一言語OracleAS Forms Servicesアプリケーションで固定され、通常はデフォルトのOracleAS Forms Servicesのロケールと同じです。単一言語OracleAS Forms Servicesアプリケーションを開発する場合、対象とするユーザーのロケールと一致するように開発する必要があります。データベースのキャラクタ・セットは、OracleAS Forms Servicesキャラクタ・セットのスーパーセットにします。
たとえば、日本語ロケールの単一言語Forms Servicesアプリケーションには、日本語テキスト、日本語ボタン・ラベルおよび日本語メニューが含まれます。また、このアプリケーションは、キャラクタ・セットがJA16SJIS、JA16EUCまたはUTF8のデータベースに接続します。
default.env
ファイルのNLS_LANG
パラメータは、Forms Servicesのロケールを制御します。さらに、Forms Servicesに非Latin-1パラメータを渡すには、formsweb.cfg
でdefaultcharset
パラメータを設定できます。
関連項目: 関連項目:『Oracle Application Server Forms Services利用ガイド』 |
多言語OracleAS Forms Servicesアプリケーションでのロケール認識
多言語環境では、アプリケーションは次の2つの方法でOracleAS Forms Servicesのロケールを動的に決定できます。
ユーザーのプロファイルに基づく方法
ユーザーの入力に基づく方法
OracleAS Forms Servicesアプリケーションを開発する場合、これらの方法のいずれかを選択する必要があります。
多言語OracleAS Forms Servicesアプリケーションは、複数の環境構成ファイル(envFile
)を使用して構成できます。たとえば、ある形式を作成して、それを異なる言語に翻訳する手順は次のとおりです。
form.fmx
という形式を作成します。
Oracle Translatorを使用して、form.fmx
を日本語やアラビア語に翻訳します。
これらをd:\form\ja\form.fmx
(日本語)およびd:\form\ar\form.fmx
(アラビア語)として保存します。
2つの環境構成ファイル、ja.env
およびar.env
を作成します。
適切な環境ファイルで次の設定を指定します。
フォーム | 環境ファイル | NLS_LANG | FORMS_PATH |
---|---|---|---|
d:\form\ja\form.fmx
|
ja.env
|
JAPANESE_JAPAN.JA16SJIS
|
d:\form\ja
|
d:\form\ar\form.fmx
|
ar.env
|
ARABIC_EGYPT.ARMSWIN1256
|
d:\form\ar
|
また、ブラウザの推奨言語設定を読み込むようにOracleAS Forms Servicesを構成できます。たとえば、ある人事管理(HR)のアプリケーションが24の言語に翻訳される場合、次のようなアプリケーションのエントリをformsweb.cfg
ファイルに追加します。
[HR] default.env [HR.de] de.env [HR.fr] fr.env [HR.it] it.env . . .
Forms Servletがブラウザの言語プリファレンスを検出すると、アプリケーションの翻訳済のバージョンがあるかどうかを確認するためにformsweb.cfg
ファイルをチェックします。
たとえば、リクエストがhttp://
myserver.mydomain
/forms/frmservlet?config=HR
で、推奨言語がドイツ語(de
)、イタリア語(it
)およびフランス語(fr
)に設定されている場合、この順序が優先順位になります。Forms Servletでは、次の順序でアプリケーションの定義を読み込もうとします。
HR.de HR.it HR.fr HR
Forms Servletがこれらの構成のうちいずれも検出できない場合は、HR
の構成(default.env
)を使用します。
つまり、1つのURLで複数の言語をサポートするOracle Formsを構成できます。各アプリケーションの定義では、NLS言語パラメータの定義を含む、独自の環境ファイルを保持できます。また、各アプリケーションの作業ディレクトリ情報やパス情報を個別に指定できます。
さらに、JavaクライアントにAlbany WT Jフォントがインストールされている場合、Oracle Formsは1つのフォームで複数の言語を表示できます。このフォントは、お使いのCDパックのユーティリティのCD-ROMまたは次のURLで取得できます。
Albany WT Jフォントは、クライアントでJInitiator 1.3.1を使用している場合は%WINDOWS%\Fonts
ディレクトリに、Java Plug-in 1.4.1を使用している場合は%JAVA_HOME%\lib\fonts
ディレクトリにコピーする必要があります。
Oracle Reports(OracleAS Reports Services)のアーキテクチャは次のとおりです。
クライアント層(ブラウザ)
Reports Server(中間層)
Oracleカスタマ・データベース(バックエンド)
OracleAS Reports Servicesは、ユーザーのリクエストに応じて複数のレポートを同時に実行できます。Reports Serverではレポートのリクエストをジョブ・キューに入力し、これらを動的かつ構成可能な、事前に作成したいくつかのランタイム・エンジンにディスパッチします。ランタイム・エンジンは、データベースに接続してデータを取得し、クライアントの出力をフォーマットします。
Reports ServerのNLS_LANG
設定は、ランタイム・エンジンのロケールを初期化します。NLS_LANGUAGE
パラメータは、NLS_LANG
パラメータからその値を取得し、Reports Serverメッセージの言語を決定します。NLS_TERRITORY
パラメータは、NLS_LANG
パラメータからその値を取得し、日付および通貨形式を決定します。たとえば、NLS_LANG
がJAPANESE_JAPAN.JA16SJIS
に設定されている場合、Reports Serverメッセージは日本語で表示され、レポートには日本語の日付書式および通貨記号が使用されます。
動的な環境の切替え機能では、Reports Serverの1つのインスタンスを有効にして、NLS_LANG
などの任意の環境設定を持つレポートを提供します。Reports Serverの構成ファイルの環境要素を使用すると、参照できる言語環境を次の2つの方法で作成できます。
Reports Server構成ファイルのエンジン要素を使用した、ランタイム・エンジンに基づく方法
ENVID
コマンドライン引数を使用した、ジョブに基づく方法
関連項目: 動的な環境の切替えの詳細は、『Oracle Application Server Reports Services レポートWeb公開ガイド』を参照してください。 |
レポートの出力は、OracleAS Reports Servicesのキャラクタ・セットで生成されます。クライアントでは、OracleAS Reports ServicesがHTMLまたはXMLを生成した際のキャラクタ・セットが認識される必要があります。
単一言語OracleAS Reports Servicesアプリケーションでのロケール認識
ユーザーのロケールは、単一言語OracleAS Reports Servicesアプリケーションで固定され、通常はReports Serverのロケールと同じです。データベースのキャラクタ・セットは、Reports Serverのキャラクタ・セットのスーパーセットにします。
多言語OracleAS Reports Servicesアプリケーションでのロケール認識
多言語レポートでは、アプリケーションは次の2つの方法でReports Serverのロケールを動的に決定します。
ユーザーのプロファイルに基づく方法
ユーザーの入力に基づく方法
レポートを開発する場合、これらの方法のいずれかを選択する必要があります。
動的な環境の切換え機能を使用して複数の言語をサポートできます。
関連項目:
|
Oracle Business Intelligence Discoverer(OracleBI Discoverer)は、異なるロケールのユーザーを同時にサポートできます。ユーザーは、ユーザー・インタフェースに使用するロケールを明示的に制御するか、OracleBI Discovererによって自動的にデフォルトを決定します。言語とロケールの決定の優先順位は、次のようになります。
OracleBI DiscovererのURLに記載された言語およびロケールの設定。
OracleBI Discovererへの接続で指定された言語およびロケールの設定。ユーザーのブラウザで設定されているロケールが指定されている場合は、そのユーザーのブラウザの言語設定が使用されます。
Oracle Application Serverの言語およびロケール。
たとえば、ユーザーが、言語およびロケールをGerman - Germany
に設定したブラウザを使用して、OracleBI Discovererを起動するURLに移動するとします。戻されるHTMLページはドイツ語で表示されます。言語およびロケールがEnglish - US
に設定された「OracleBI Discovererへの接続」をクリックすると、OracleBI Discovererのユーザー・インタフェースは英語で表示されます。これは、OracleBI Discoverer Connectionの設定がブラウザの設定より優先されるためです。