BEA ホーム | 製品 | デベロッパ・センタ | support | askBEA
 ドキュメントのダウンロード   サイト マップ   用語集 
検索

WebLogic XML プログラマーズ ガイド

 前 次 目次 索引 PDFで表示  

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 レジストリを使用すると、以下の指定が可能になります。

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

XML レジストリの仕組み

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

WebLogic Server のインスタンスに関連付けられている XML レジストリがない場合、ドキュメントの解析および変換に組み込みパーサおよびトランスフォーマが使用されます。

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

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

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


 

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

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

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

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

  3. 組み込み Xerces パーサを使用します。

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

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

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

 


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

デフォルトでは、WebLogic Server は、組み込みパーサとトランスフォーマで XML ドキュメントを解析および変換するようにコンフィグレーションされています。リリース 7.0 では、組み込み XML パーサは Apache Xereces、組み込みトランスフォーマは Apache Xalan です。デフォルト コンフィグレーションを使用する場合、XML アプリケーション用のコンフィグレーション タスクは不要です。組み込み以外のパーサまたはトランスフォーマを使用する場合は、以下の節で説明するように XML レジストリでパーサおよびトランスフォーマをコンフィグレーションする必要があります。

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

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

警告: WebLogic Server バージョン 7.0 では、Apache Xerces パーサの次のバージョンのみをプラグインできます。

  1. WebLogic 管理サーバを起動し、Administration Console をブラウザで起動します。Administration Console 開始の詳細については、WebLogic Server XML の管理の概要を参照してください。

  2. 左ペインの [サービス] ノードの下にある [XML] ノードを右クリックし、ドロップダウン メニューから [新しい XML Registry のコンフィグレーション] を選択します。新しい XML レジストリ作成用のウィンドウが表示されます。

    図7-1 Administration Console のメイン XML レジストリ ウィンドウ


     

  3. ユニークなレジストリ名を [名前] フィールドに入力し、[Document Builder ファクトリ] フィールド、[SAX パーサ ファクトリ] フィールド、および [Transformer ファクトリ] フィールドに適切なファクトリ パーサおよびトランスフォーマのクラスを設定します。

    たとえば、WebLogic FastParser の場合は、次の情報を入力します。

[名前] : WebLogic FastParser
[Document Builder ファクトリ] :
[SAX パーサ ファクトリ] : weblogic.xml.babel.jaxp.SAXParserFactoryImpl
[Transformer ファクトリ] :

上の例では、[Document Builder ファクトリ] および [Transformer ファクトリ] は空白のまま残されています。これは、DOM 解析および変換では、それぞれ組み込みパーサおよびトランスフォーマが使用されることを意味します。WebLogic FastParser は、SAX 解析でのみ使用されます。

Apache Xerces パーサおよび Xalan トランスフォーマを直接指定する場合、以下の情報のいずれかを指定します。

[名前] : Apache Xerces/Xalan Registry
[Document Builder ファクトリ] :
org.apache.xerces.jaxp.DocumentBuilderFactoryImpl
[SAX パーサ ファクトリ] :
org.apache.xerces.jaxp.SAXParserFactoryImpl
[Transformer ファクトリ] :
org.apache.xalan.processor.TransformerFactoryImpl

  1. [作成] ボタンをクリックします。左ペインの [XML] ノードの下に、XML レジストリが作成されて表示されます。

  2. 左ペインの [サーバ] ノード下で、新しい XML レジストリに関連付けるサーバの名前をクリックします。

  3. 右ペインで、[サービス] タブを選択します。

  4. [XML] タブを選択します。WebLogic Server の XML プロパティのコンフィグレーション用ウィンドウが右ペインに表示されます。

    図7-2 Administration Console の XML プロパティ コンフィグレーション用ウィンドウ


     

  5. [XML レジストリ] フィールドで、このサーバに関連付ける XML レジストリ名を選択し、[適用] ボタンをクリックします。

  6. サーバを再起動して新しい設定内容を有効にします。

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

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

警告: WebLogic Server では、XML ドキュメントのタイプを識別する際、ドキュメントの先頭から 1000 バイトのみをサーチします。この先頭 1000 バイトで DOCTYPE ID が見つからない場合、ドキュメントのサーチは停止され、WebLogic Server インスタンス用にコンフィグレーションされたパーサを使用してドキュメントの解析が行われます。

注意: 次の手順では、これから新しい XML レジストリを作成して、必要なパーサ レジストリ エントリを追加し、サーバに関連付けることを前提としています。既存の XML レジストリを既にサーバに関連付けている場合は、手順 5. にスキップしてください。

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

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

    Administration Console 開始の詳細については、WebLogic Server XML の管理の概要を参照してください。

  2. 左ペインの [サービス] ノードの下にある [XML] ノードを右クリックし、ドロップダウン メニューから [新しい XML Registry のコンフィグレーション] を選択します。図7-1 のように、新しい XML レジストリの作成用ウィンドウが表示されます。

  3. [名前] フィールドにユニークなレジストリ名を入力します。サーバに対してデフォルト パーサおよびトランスフォーマをコンフィグレーションする場合、[Document Builder ファクトリ]、[SAX パーサ ファクトリ]、および [Transformer ファクトリ] フィールドにファクトリ クラス名を入力します。そうでない場合は、フィールドを空白のままにします。

  4. [作成] ボタンをクリックします。左ペインの [XML] ノードの下に、XML レジストリが作成されて表示されます。

  5. 左ペインの [XML] ノード下で、XML レジストリの [XML パーサの登録] ノードを右クリックします。ドロップダウン メニューから [新しい XMLParserSelectRegistryEntry のコンフィグレーション] を選択します。ドキュメント タイプ情報入力用の空のウィンドウが右ペインに表示されます。

    図7-3 Administration Console による XML パーサのコンフィグレーション


     

  6. 以下のいずれかの方法でドキュメント タイプ情報を入力します。

    1. [パブリック ID] フィールドまたは [システム ID] フィールドのいずれかに doctype を指定します。たとえば、car.xmlリスト7-1 を参照)の場合、[パブリック ID] フィールドに「-//BEA Systems, Inc.//DTD for cars//EN」と入力します。

    2. [ルート要素タグ] にドキュメントのルート要素タグ名を指定します。car.xml の例では、[ルート要素タグ] フィールドに「CAR」と入力します。

      XML ドキュメントでネームスペースを定義する場合、VEHICLES:CAR のように完全修飾のルート要素タグを入力してください。

コード リスト 7-1 car.xml ファイル

<?xml version="1.0"?> 
<!-- 以下の XML ドキュメントでは自動車を説明 -->
<!DOCTYPE CAR PUBLIC "-//BEA Systems, Inc.//DTD for cars//EN"
"http//www.beasys.co.jp/index.html">
<CAR>
<MAKE>Toyota</MAKE>
<MODEL>Corrolla</MODEL>
<YEAR>1998</YEAR>
<ENGINE>1.5L</ENGINE>
<HP>149</HP>
</CAR>

  1. [Document Builder ファクトリ] または [SAX パーサ ファクトリ] フィールドに、適切なファクトリ パーサ クラスを指定します。

    たとえば、このドキュメント タイプを WebLogic FastParser で解析するように指定する場合は、[SAX パーサ ファクトリ] フィールドに「weblogic.xml.babel.jaxp.SAXParserFactoryImpl」と入力します。

    注意: [パーサ クラス名] フィールドに情報を入力しないでください。このフィールドは、旧バージョンの WebLogic Server との下位互換性を保つためのものです。

  2. [作成] ボタンをクリックします。XMLParserSelect レジストリ エントリが作成されます。

  3. 左ペインの [サーバ] ノード下で、新しい XML レジストリに関連付けるサーバの名前をクリックします。

  4. 右ペインで、[サービス] タブを選択します。

  5. [XML] タブを選択します。図7-2のように、WebLogic Server の XML プロパティのコンフィグレーション用ウィンドウが右ペインに表示されます。

  6. [XML レジストリ] フィールドで、このサーバに関連付ける XML レジストリ名を選択し、[適用] ボタンをクリックします。

  7. サーバを再起動して新しい設定内容を有効にします。

 


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

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

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

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

注意: 次の手順では、これから新しい XML レジストリを作成して、必要な外部エンティティ解決のエントリを追加し、サーバに関連付けることを前提としています。既存の XML レジストリを既にサーバに関連付けている場合は、手順 5. にスキップしてください。

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

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

    Administration Console 開始の詳細については、WebLogic Server XML の管理の概要を参照してください。

  2. 左ペインの [サービス] ノードの下にある [XML] ノードを右クリックし、ドロップダウン メニューから [新しい XML Registry のコンフィグレーション] を選択します。図7-1 のように、新しい XML レジストリの作成用ウィンドウが表示されます。

  3. [名前] フィールドに、ユニークなレジストリ名を入力します。サーバに対してデフォルト パーサおよびトランスフォーマをコンフィグレーションする場合、[Document Builder ファクトリ]、[SAX パーサ ファクトリ]、および [Transformer ファクトリ] フィールドにファクトリ クラス名を入力します。そうでない場合は、フィールドを空白のままにします。

  4. [作成] ボタンをクリックします。左ペインの [XML] ノードの下に、XML レジストリが作成されて表示されます。

  5. 左ペインの [XML] ノード下で、XML レジストリの [XML エンティティ定義] ノードを右クリックします。ドロップダウン メニューから [新しい XMLEntitySpecRegistryEntry のコンフィグレーション] を選択します。エンティティ解決情報入力用の空のウィンドウが右ペインに表示されます。

    図7-4 Administration Console による外部エンティティのコンフィグレーション


     

  6. XML ドキュメントで外部エンティティを参照するのに使用する [システム ID] または [パブリック ID] のどちらかを入力します。たとえば、次の car.xml ファイルの場合は、[システム ID] に対して「http://www.bea.com/dtds/car.dtd」と入力します。

コード リスト 7-2 car.xml ファイル

<?xml version="1.0"?> 
<!-- 以下の XML ドキュメントでは自動車を説明 -->
<!DOCTYPE CAR PUBLIC "-//BEA Systems, Inc.//DTD for cars//EN"
"http//www.beasys.co.jp/index.html">
<CAR>
<MAKE>Toyota</MAKE>
<MODEL>Corrolla</MODEL>
<YEAR>1998</YEAR>
<ENGINE>1.5L</ENGINE>
<HP>149</HP>
</CAR>

  1. 外部エンティティのローカル コピーをコンフィグレーションする場合、レジストリ エンティティ ディレクトリ DOMAIN/xml/registries/reg_name が存在することを確認してください。DOMAIN はドメイン ディレクトリ、reg_name は XML レジストリの名前です。ファイルが存在しない場合は、新たに作成します。

  2. [エンティティ URI] フィールドで、以下のいずれかのエンティティ パスを入力します。

    1. 管理サーバ内のエンティティ ファイルのコピーのパス名。このパス名は、レジストリ エンティティ ディレクトリ DOMAIN/xml/registries/reg_name を基準にした相対パス名にする必要があります。

      たとえば、car.xml ファイルの場合、[エンティティ URI] フィールドに「dtds/car.dtd」と入力できます。

    2. Web 上の外部エンティティを示す URL、またはレポジトリに保存されているエンティティ。たとえば、「http://java.sun.com/j2ee/dtds/application_1_2.dtd」と入力して、J2EE エンタープライズ アプリケーションの説明に使用する application.xml ファイルの DTD を参照するか、jdbc: を使用してデータベース内の任意のエンティティを参照します。

      http://file://jdbc:、または ftp:// のプロトコル宣言を使用して、外部エンティティを指定します。

  3. [キャッシュのタイミング] リスト ボックスから以下のオプションのいずれか 1 つを選択します。

  4. [キャッシュ タイムアウト間隔] フィールドで、キャッシュされた外部エンティティが古くなる(期限切れになる)までの秒数を入力します。キャッシュされたコピーがこの期間を超えた場合に、WebLogic Server は、管理サーバを基準に指定した相対 URL またはパス名から外部エンティティを再取得します。

    このフィールドのデフォルト値は -1 で、WebLogic Server のグローバル タイムアウト値が使用されます。グローバル キャッシュ タイムアウト設定のコンフィグレーションの詳細については、外部エンティティ キャッシュのコンフィグレーションを参照してください。

  5. [作成] ボタンをクリックします。XMLEntitySpec レジストリ エントリが作成されます。

  6. 左ペインの [サーバ] ノード下で、新しい XML レジストリに関連付けるサーバの名前をクリックします。

  7. 右ペインで、[サービス] タブを選択します。

  8. [XML] タブを選択します。図7-2のように、WebLogic Server の XML プロパティのコンフィグレーション用ウィンドウが右ペインに表示されます。

  9. [XML レジストリ] フィールドで、このサーバに関連付ける XML レジストリ名を選択し、[適用] ボタンをクリックします。

  10. サーバを再起動して新しい設定内容を有効にします。

  11. Web からのキャッシュではなく、エンティティのローカル コピーを使用するように指定した場合は、エンティティ ファイルをエンティティ ディレクトリにコピーします。

    たとえば、car.dtd ファイルを DOMAIN/xml/registries/reg_name/dtds ディレクトリにコピーします。DOMAIN はドメイン ディレクトリ、reg_name は XML レジストリの名前です。

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

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

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

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

    Administration Console 開始の詳細については、WebLogic Server XML の管理の概要を参照してください。

  2. 左ペインの [サーバ] ノード下で、外部エンティティ キャッシュをコンフィグレーションする WebLogic Server の名前をクリックします。

  3. 右ペインの [サービス] タブを選択します。

  4. [XML] タブを選択します。図7-2のように、WebLogic Server の XML プロパティのコンフィグレーション用ウィンドウが右ペインに表示されます。

  5. [キャッシュ メモリ サイズ] フィールドで、キャッシュ メモリのサイズ(KB)を入力します。

  6. [キャッシュ ディスク サイズ] フィールドで、永続ディスク キャッシュのサイズ(MB)を入力します。

  7. [キャッシュ タイムアウト間隔] フィールドで、エンティティが期限切れになるまでの秒数を入力します。

  8. [適用] ボタンをクリックします。

外部エンティティ キャッシュのモニタ

外部エンティティ キャッシュを説明する一連の統計情報を使用して、キャッシュの効果をモニタできます。統計では、以下の情報を示します。

外部エンティティ キャッシュをモニタするには、次の手順に従います。

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

    Administration Console 開始の詳細については、WebLogic Server XML の管理の概要を参照してください。

  2. 左ペインの [サーバ] ノード下で、外部エンティティ キャッシュをコンフィグレーションする WebLogic Server の名前をクリックします。

  3. 右ペインの [サービス] タブを選択します。

  4. [XML] タブを選択します。図7-2のように、WebLogic Server の XML プロパティのコンフィグレーション用ウィンドウが右ペインに表示されます。

  5. 右ペインの [XML エンティティ キャッシュのモニタ] をクリックします。

  6. キャッシュの現在の状態を表示するには [現在] タブを、現在のセッションの累積アクティビティを表示するには [セッション] タブを、キャッシュ作成以降、通常は WebLogic Server 起動以降の累積アクティビティを表示するには [履歴] タブを、それぞれクリックします。

以下の表で、外部エンティティ キャッシュの現在の状態を表示する場合のフィールドについて説明します。

表7-1 キャッシュ統計の現在の状態

フィールド

タブ

説明

Total Current Entries

一般

キャッシュ内のエントリ合計数を返す。

Total Persistent Current Entries

一般

キャッシュ内の永続エントリ数を返す。

Total Transient Current Entries

一般

キャッシュ内の一時エントリ数を返す。

Avg Percent Transient

一般

エントリの中で一時エントリが占めるパーセントを返す。

Avg Percent Persistent

一般

エントリの中で永続エントリが占めるパーセントを返す。

Avg Timeout

一般

エントリの平均タイムアウト値を返す。

Min Entry Timeout

一般

現在のエントリの最小タイムアウト値を返す。

Max Entry Timeout

一般

現在のエントリの最大タイムアウト値を返す。

Avg Per Entry Memory Size

エントリ リソース使用状況

現在のエントリの平均メモリ サイズを返す。

Max Entry Memory Size

エントリ リソース使用状況

現在のエントリの最大メモリ サイズを返す。

Min Entry Memory Size

エントリ リソース使用状況

現在のエントリの最小メモリ サイズを返す。

Avg Per Entry Disk Size

エントリ リソース使用状況

現在のエントリの平均ディスク サイズを返す。

Memory Usage

合計リソース使用状況

すべてのメモリ常駐エントリの保存に使用するバイト数を返す。

Disk Usage

合計リソース使用状況

すべてのディスク常駐エントリの保存に使用するバイト数を返す。

以下の表で、外部エンティティ キャッシュの累積アクティビティを表示する場合のフィールドについて説明します。

表7-2 キャッシュの累積アクティビティ

メソッド

タブ

説明

Total Current Entries

一般

キャッシュ内のエントリ合計数を返す。

Total Persistent Current Entries

一般

キャッシュ内の永続エントリ数を返す。

Total Transient Current Entries

一般

キャッシュ内の一時エントリ数を返す。

Avg Percent Transient

一般

エントリの中で一時エントリが占めるパーセントを返す。

Avg Percent Persistent

一般

エントリの中で永続エントリが占めるパーセントを返す。

Avg Timeout

一般

エントリの平均タイムアウト値を返す。

Min Entry Timeout

一般

現在のエントリの最小タイムアウト値を返す。

Max Entry Timeout

一般

現在のエントリの最大タイムアウト値を返す。

Avg Per Entry Memory Size

エントリ リソース使用状況

現在のエントリの平均メモリ サイズを返す。

Max Entry Memory Size

エントリ リソース使用状況

現在のエントリの最大メモリ サイズを返す。

Min Entry Memory Size

エントリ リソース使用状況

現在のエントリの最小メモリ サイズを返す。

Avg Per Entry Disk Size

エントリ リソース使用状況

現在のエントリの平均ディスク サイズを返す。

Total Number Of Rejections

拒否

拒否されたエントリ数を返す。

Total Size Of Rejections

拒否

拒否された全項目の合計サイズをバイト数で返す。

Percent Rejected

拒否

拒否された挿入をパーセントで返す。

Total Number Of Renewals

拒否

期限切れエントリが更新された回数を返す。

 

ページの先頭 前 次