1 概要

この章では、WebLogic ServerのXML機能のサマリーと、XML開発者向けの様々なサンプル・コードを示します。

XML開発者向けのサンプル

このマニュアルの他にも、様々なサンプル・コードがXML開発者向けに用意されています。サンプルとチュートリアルではWebLogic Server XMLの動作が例示され、主要なXML開発タスクを実行する実際的な手順が示されています。

XMLを処理する独自のアプリケーションをプログラミングする前に、まずXMLサンプルの一部またはすべてを実行することをお薦めします。

WebLogic Server配布キットのXMLサンプル

WebLogic Serverでは、オプションで、APIコード・サンプルがORACLE_HOME\wlserver\samples\serverディレクトリにインストールされます(ここで、ORACLE_HOMEは、WebLogic Serverをインストールしたディレクトリ)。WebLogic Serverサンプル・コードの詳細は、『Oracle WebLogic Serverの理解』サンプル・アプリケーションおよびサンプル・コードに関する項 を参照してください。

WebLogic ServerのXML機能の概要

WebLogic Serverでは、WebLogic Serverに適用可能なXMLテクノロジと、WebLogic Serverに基づくXMLアプリケーションが統合されています。WebLogic Server XMLサブシステムを使用すると、顧客は、標準パーサー、WebLogic FastParser、XSLTトランスフォーマ、DTD、およびXMLスキーマを使用してXMLファイルを処理および変換できます。

この節では、WebLogic Server XMLサブシステムにある以下の機能が表示されています。

XMLドキュメント・パーサー

WebLogic Serverは、JDKに付属のXMLパーサーをデフォルトで使用します。

WebLogic Server管理コンソールによるXMLレジストリの構成では、他のあらゆるXMLパーサーを使用できます。単一のWebLogic Serverのインスタンスを構成することによって、あるパーサーを特定のアプリケーション用に使用し、別のパーサーを異なるアプリケーション用に使用できます。

XMLドキュメントの解析については、「XMLドキュメントの解析」を参照してください

WebLogic Serverバージョン8.1と9.1のデフォルト・パーサーの違い

バージョン8.1およびそれ以前のWebLogic Serverにおけるデフォルトのパーサーは、ApacheのXercesをベースにしたもので、パッケージ名の先頭にはweblogic.apache.xerces.*が付いていました。バージョン9.1のWebLogic Serverでは、このパーサーは非推奨となりました。かわりに、デフォルトのパーサーはJDKに同梱されているものと同じです。

下位互換性のためweblogic.apache.xerces.*パーサーはバージョン9.1のWebLogic Serverでも使用できますが、これは現在は非推奨になっており今後のバージョンでは使用できなくなるので、使用しないことを強くお薦めします。ただし、一時的にこのパーサーを使用する必要がある場合は、WebLogic Server管理コンソールを使用して、XMLレジストリを更新または新規作成し、表1-1で示すSAXおよびDOMパーサー・ファクトリ・インタフェースのデフォルト実装クラスを設定することにより、使用中のWebLogic Serverインスタンス用のデフォルトでないパーサーを構成しなければなりません。

表1-1 SAXおよびDOMパーサー・ファクトリ・インタフェースのデフォルト実装クラス

パーサー・ファクトリ・インタフェース 実装クラス

DOM (DocumentBuilderFactory)

weblogic.apache.xerces.jaxp.DocumentBuilderFactoryImpl

SAX (SAXParserFactory)

weblogic.apache.xerces.jaxp.SAXParserFactoryImpl

XMLレジストリの作成については、「WebLogic Server XMLの管理」を参照してください。

XMLドキュメント・トランスフォーマ

WebLogic Serverは、JDKに付属のXMLトランスフォーマをデフォルトで使用します。

WebLogic Server管理コンソールによるXMLレジストリの構成では、他のあらゆるXMLトランスフォーマを使用できます。単一のWebLogic Serverのインスタンスを構成することによって、あるトランスフォーマを特定のアプリケーション用に使用し、別のトランスフォーマを異なるアプリケーション用に使用できます。

XMLドキュメントの変換については、「XMLドキュメントの変換」を参照してください

Streaming API for XML (StAX)の実装

WebLogic Serverには、Streaming API for XML (StAX)の実装が含まれています。

「Streaming API for XML (StAX)の使い方」を参照してください。

WebLogic XPath API

WebLogic XPath APIには、DOMXMLInputStream、またはXMLOutputStreamとして表現されるドキュメントに対してXPathのマッチングを実行するために必要となる、すべてのクラスが入っています。

「WebLogic XPath APIの使い方」を参照してください。

JAXPプラガブル・レイヤーの実装

Java API for XML Processing (JAXP) 1.2は、Java標準で、パーサーに依存しないXML用APIです。JAXPの詳細は、「JAXPとは」を参照してください。

ノート:

WebLogic Serverは、WebLogic Server管理コンソールからアクセスされるXMLレジストリを使用して、パーサーとトランスフォーマをプラグインします。この点が、システム・プロパティを使用してパーサーとトランスフォーマをプラグインするように指定されたJAXP 1.2仕様との違いです。

WebLogicサーブレット属性

WebLogic Serverは、以下の特殊なサーブレット属性をサポートします。

  • org.xml.sax.HandlerBase

  • org.xml.sax.helpers.DefaultHandler

  • org.w3c.dom.Document

ServletRequestオブジェクトで、前述の属性を付けてsetAttributeメソッド(SAX解析の場合)およびgetAttributeメソッド(DOM解析の場合)を呼び出すと、任意のXMLドキュメントが解析されます。

「サーブレットでのXMLドキュメントの解析」を参照してください。

パーサーおよびトランスフォーマの構成用XMLレジストリ

XMLレジストリは、管理タスクと構成タスクをXMLアプリケーションから切り離すことによって、これらのタスクを簡素化します。WebLogic Server管理コンソールを使用して、WebLogic Serverのインスタンスのパーサーとトランスフォーマを構成します。

「XMLパーサーおよびトランスフォーマの構成タスク」を参照してください。

外部エンティティの解決の構成用XMLレジストリ

WebLogic XMLでは、XMLレジストリを使用して外部エンティティを解決できます。「外部エンティティの構成タスク」を参照してください。

推奨規格オーバーライド機構によるDOM/SAXの切替え:サポート対象外

WebLogic Serverでは、サーバーのDOMインタフェースとSAXインタフェースの推奨規格オーバーライド機構(Endorsed Standards Override Mechanism)を使用した切替えをサポートしていません。

推奨規格とは、Java Community Process (JCP)以外の標準プロセスを介して定義されたJava APIのことです。http://docs.oracle.com/javase/8/docs/technotes/guides/standards/にある推奨規格オーバーライド機構に関する項を参照してください。

XMLの詳細情報へのリンク

XMLについてさらに学習するには、以下のオンライン・コースおよびチュートリアルを参照してください。「XMLリファレンス」には追加情報へのリンクがあります。