ヘッダーをスキップ
Oracle® Fusion Middleware Oracle WebLogic Server XML プログラマーズ ガイド
11g リリース 1 (10.3.1)
B55533-01
 

目次
目次

戻る
戻る
 
次へ
次へ
 

9 WebLogic Server XML の管理

以下の節では、WebLogic Server での XML の管理について説明します。

WebLogic Server XML の管理の概要

Administration Console から XML レジストリにアクセスし、XML レジストリで WebLogic Server を XML アプリケーション用にコンフィグレーションします。

ブラウザで Administration Console を起動するには、次の URL を入力します。

http://host:port/console

各要素の説明は次のとおりです。

XML の管理タスク

XML レジストリは、Administration Console を使用して作成、コンフィグレーション、および使用します。Administration Console XML レジストリの使用には、次のメリットがあります。

  • XML アプリケーションで JAXP を使用している場合、XML レジストリのコンフィグレーションの変更が実行時に自動的に有効になる。

  • XML レジストリを変更する場合、XML アプリケーション コードを変更する必要はない。

  • エンティティの解決がローカルで実行される。XML レジストリでは、エンティティのローカル コピーを定義できます。または、WebLogic Server が Web からエンティティを指定した期間キャッシュし、Web 上のエンティティではなく、そのキャッシュしたコピーを使用するように指定することもできます。

XML レジストリを使用すると、以下の指定が可能になります。

  • デフォルト パーサの代わりとなるサーバ全体の XML パーサ。

  • ドキュメント タイプ単位の XML パーサ。

  • デフォルトのトランスフォーマの代わりとなる、サーバ全体の代替トランスフォーマ。

  • エンティティのローカル コピーで解決される外部エンティティ。外部エンティティを指定すると、管理サーバでは、エンティティのローカル コピーがファイル システムに保存され、解析時にサーバのパーサに自動的に配布されます。この機能を使用すれば、SAX EntityResolvers の作成と設定が不要になります。

  • Web からの取得後に WebLogic Server によってキャッシュされる外部エンティティ。WebLogic Server が再取得するまでこれらの外部エンティティがキャッシュされる期間、および WebLogic が最初にエンティティを取得するタイミング (アプリケーションの実行時か、WebLogic Server の起動時か) を指定します。

これらの機能は、サーバサイドだけで使用できます。

XML レジストリの仕組み

XML レジストリを必要な数だけ作成できますが、WebLogic Server の特定のインスタンスに関連付けることができる XML レジストリの数は 1 つだけです。

WebLogic Server のインスタンスに XML レジストリが関連付けられていない場合、ドキュメントの解析や変換にはデフォルトのパーサおよびトランスフォーマが使用されます。デフォルトのパーサおよびトランスフォーマは、JDK バージョン 5.0 に付属しています。

XML レジストリを WebLogic Server のインスタンスに関連付けると、すべての XML コンフィグレーション オプションが、そのサーバを使用している XML アプリケーションで利用可能になります。

XML レジストリに対しては、以下のタイプのエントリを作成できます。

  • パーサおよびトランスフォーマのコンフィグレーション。

  • 外部エンティティ解決のコンフィグレーション。


    注意 :

    XML レジストリでは、大文字と小文字が区別されます。たとえば、ルート要素が <CAR> の XML ドキュメント タイプのパーサをコンフィグレーションしている場合、[ルート要素タグ] フィールドには、carCar ではなく CAR と入力する必要があります。

XML レジストリ内のパーサの選択

JAXP で XML アプリケーションを解析または変換する場合は、常に XML レジストリに自動的にアクセスします。WebLogic Server は、以下のようなルックアップ順序に従って、ロードするパーサのクラスを決定します。

  1. 特定のドキュメント タイプ用に定義したパーサを使用します。

  2. WebLogic Server インスタンスに関連付けられている XML レジストリで定義されたサーバ全体の代替パーサを使用します。

  3. デフォルト パーサ (JDK 5.0 に付属のパーサ) を使用します。

特定のドキュメント タイプに対応するトランスフォーマを定義することはできないので最初の手順は除きますが、それ以外ではこのプロセスはトランスフォーマにも当てはまります。

さらに、WebLogic Server の起動時に、SAX エンティティ リゾルバは、レジストリで宣言されたエンティティを解決するように自動的に設定されます。したがって、使用するパーサを制御したり、外部エンティティのローカル コピーの場所を設定したりするために、XML アプリケーション コードを変更する必要はありません。使用するパーサ、および外部エンティティの位置は、XML レジストリで制御します。


注意 :

JAXP ではなくパーサによって提供された API を使用する場合、XML レジストリは XML ドキュメントの処理に影響を与えません。このため、XML アプリケーションではなるべく JAXP を使用してください。

XML パーサおよびトランスフォーマのコンフィグレーション タスク

デフォルトでは、WebLogic Server は、デフォルト パーサとトランスフォーマで XML ドキュメントを解析および変換するようにコンフィグレーションされています。デフォルトのパーサおよびトランスフォーマは、JDK 5.0 に付属しています。デフォルトを使用する限りは、XML アプリケーションについてコンフィグレーション タスクを実行する必要はありません。デフォルト以外のパーサまたはトランスフォーマを使用する場合は、以下の節で説明するように XML レジストリでパーサおよびトランスフォーマをコンフィグレーションする必要があります。

デフォルト以外のパーサまたはトランスフォーマのコンフィグレーション

次の手順ではまず、SAX および DOM パーサおよびトランスフォーマを定義する XML レジストリの作成方法を説明します。次に、サーバで新しいパーサとトランスフォーマを使用するために、新しい XML レジストリを WebLogic Server のインスタンスに関連付ける (プラグインする) 方法を説明します。


注意 :

デフォルトの WebLogic Server パーサおよびトランスフォーマと互換性があるパーサおよびトランスフォーマのみをプラグインできます。デフォルトのパーサおよびトランスフォーマは、JDK 5.0 に付属しています。

  1. WebLogic 管理サーバを起動し、Administration Console をブラウザで起動します。Administration Console の呼び出し方法については、「WebLogic Server XML の管理の概要」を参照してください。

  2. 『Oracle Fusion Middleware Oracle WebLogic Server Administration Console ヘルプ』の「XML レジストリの作成」で説明されている手順に従います。

特定のドキュメント タイプに対応したパーサのコンフィグレーション

特定のドキュメント タイプに対応したパーサをコンフィグレーションする場合、ドキュメントのシステム ID、パブリック ID、ルート要素を使用して、ドキュメント タイプを識別できます。


注意 :

WebLogic Server では、ドキュメントの種類を識別しようとするとき、XML ドキュメントの最初の 1000 バイトのみを検索します。この最初の 1000 バイトの中に DOCTYPE 識別子が見つからなければ、ドキュメントの検索は終了し、WebLogic Server インスタンス用にコンフィグレーションされたパーサを使用してドキュメントの解析が行われます。

特定のドキュメント タイプに対応したパーサをコンフィグレーションするには、以下の手順を実行します。

  1. WebLogic 管理サーバを起動し、Administration Console をブラウザで起動します。

    Administration Console の呼び出し方法については、「WebLogic Server XML の管理の概要」を参照してください。

  2. 『Oracle Fusion Middleware Oracle WebLogic Server Administration Console ヘルプ』の「ドキュメントの種類に対するパーサの関連付け」で説明されている手順に従います。

外部エンティティのコンフィグレーション タスク

XML レジストリを使用すると、外部エンティティ解決をコンフィグレーションし、外部エンティティ キャッシュをコンフィグレーションおよびモニタできます。

外部エンティティ解決のコンフィグレーション

WebLogic Server では、以下のいずれかの方法で外部エンティティの解決をコンフィグレーションできます。

  • 物理的にエンティティ ファイルを、WebLogic 管理サーバからアクセス可能なディレクトリにコピーし、外部エンティティが XML ドキュメントで参照されている場合は常に管理サーバがそのローカル コピーを使用するように指定する。

  • サーバ起動時、または外部エンティティの初めての参照時のいずれかに、管理サーバを基準にした相対 URL またはパス名で参照される外部エンティティを管理対象サーバがキャッシュするように指定する。

    外部エンティティを管理対象サーバにキャッシュすると、アクセス時間を節約できるだけでなく、ネットワークまたは管理サーバのダウンにより XML ドキュメントの解析中に管理サーバにアクセスできなくなった場合には、ローカル バックアップを利用できます。

    キャッシュされたエンティティに対して、WebLogic Server が URL または管理サーバからエンティティを再取得して再キャッシュするまでの間隔 (有効期限) をコンフィグレーションできます。

外部エンティティの解決をコンフィグレーションするには、以下の手順を実行します。

  1. WebLogic 管理サーバを起動し、Administration Console をブラウザで起動します。

    Administration Console の呼び出し方法については、「WebLogic Server XML の管理の概要」を参照してください。

  2. 『Oracle Fusion Middleware Oracle WebLogic Server Administration Console ヘルプ』の「外部エンティティ解決のコンフィグレーション」で説明されている手順に従います。

外部エンティティ キャッシュのコンフィグレーション

外部エンティティ キャッシュの以下のプロパティをコンフィグレーションできます。

  • キャッシュ メモリのサイズ (単位 : KB)。このプロパティのデフォルト値は 500KB です。

  • 永続ディスク キャッシュのサイズ (MB)。このプロパティのデフォルト値は 5MB です。

  • 外部エンティティが WebLogic Server によってキャッシュされた後、キャッシュ内で有効期限切れになるまでの秒数。これは、サーバ全体のデフォルト値です。エンティティをコンフィグレーションする場合に、特定の外部エンティティに対応するようにこの値をオーバーライドできます。このプロパティのデフォルト値は、120 秒 (2 分) です。

外部エンティティ キャッシュをコンフィグレーションするには、次の手順に従います。

  1. WebLogic 管理サーバを起動し、Administration Console をブラウザで起動します。

    Administration Console の呼び出し方法については、「WebLogic Server XML の管理の概要」を参照してください。

  2. 『Oracle Fusion Middleware Oracle WebLogic Server Administration Console ヘルプ』の「XML エンティティ キャッシュの作成」で説明されている手順に従います。