ここでは、IJServerで使用するXMLパーサの設定方法について説明します。
Interstageでは以下のXMLパーサが使用可能です。
Xerces2
Fujitsu XMLプロセッサ
注) Fujitsu XMLプロセッサをあらかじめインストールしておく必要があります。Fujitsu XMLプロセッサがインストールされていない場合はエラーとなります。
その他
IJServerごとに使用するXMLパーサを設定する
使用するXMLパーサは、Interstage管理コンソールを使用して、以下のどちらかの方法で設定します。
[ワークユニット] > [新規作成] > [詳細設定] > [共通定義] > [使用するXMLパーサの種別]
[ワークユニット] > “ワークユニット名” > [環境設定]タブ > [詳細設定] > [共通定義] > [使用するXMLパーサの種別]
また、isj2eeadminコマンドで設定することも可能です。詳細は、“リファレンスマニュアル(コマンド編)”を参照してください。
設定する値は以下です。
Xerces2 (デフォルト)
Fujitsu XMLプロセッサ
その他
この場合、XMLパーサのjarファイルが保管されているディレクトリをフルパスで指定します。指定したディレクトリ内にはorg.w3c.dom、org.xml.sax、javax.xml.parsers等のインタフェースとXMLパーサの実装クラスの両方を保管してください。どちらか一方のみの場合は、IJServerは起動できません。
設定後にXMLパーサのjarファイルが削除されるなど設定内容に不備があった場合にはデフォルトのXMLパーサが使用されます。
注) 指定するディレクトリはワークユニットの起動ユーザに対するRead権限が必要です。
注意
XMLパーサは、指定した種別により以下のようにIJServer起動時のパラメータに設定されます。
XMLパーサの種別 | パラメータに設定されるXMLパーサ |
---|---|
Xerces2 | なし |
Fujitsu XMLプロセッサ | IJServer起動時に以下が“-classpath”に設定される |
その他 | IJServer起動時にJava VMオプション:“-Djava.endorsed.dirs”に指定したディレクトリが設定される |
以下にはXMLパーサのクラスは設定できません。設定した場合は無視されます。
J2EEプロパティ
ワークユニットのクラスパス
IJServerのSharedディレクトリ
アプリケーションごとに使用するXMLパーサを指定する
他のクラスと同じように以下の設定を行うとアプリケーションが個々に使用するXMLパーサを設定することができます。
EARファイル内に含める
ejb-jarファイル内に含める
WARファイル内に含める
注意
使用するXMLパーサは、IJServerのXMLパーサの環境設定で指定したXMLパーサと以下のインタフェースのレベルを合わせる必要があります。インタフェースのレベルが合っていない場合は、XMLパーサが使用できない可能性があります。XMLパーサが使用できない場合は、ワークユニットの環境定義で選択したXMLパーサとアプリケーションが使用するXMLパーサのインタフェースのレベルが合っているか確認してください。インタフェースのレベルが合っていない場合は、アプリケーションが使用するXMLパーサのインタフェースのレベルをワークユニットの環境定義で選択したXMLパーサに合わせてください。
JAXP(javax.xml.parsersパッケージ)
SAX(org.xml.saxパッケージ)
DOM(org.w3c.domパッケージ)
IJServerのXMLパーサの環境設定で指定したXMLパーサと同一のXMLパーサは、指定しても無視され、XMLパーサの環境設定で指定したXMLパーサが使用されます。
以下のようにXMLパーサの種類を指定する場合は、IJServerのXMLパーサの環境設定で指定したXMLパーサを指定する必要があります。
IJServerのXMLパーサの環境設定で指定したXMLパーサと違うXMLパーサを指定した場合は、IJServerの起動に失敗します。
システムプロパティでの指定
DOM:javax.xml.parsers.DocumentBuilderFactory
SAX:javax.xml.parsers.SAXParserFactory
以下のjaxp.propertiesでの指定
JDK使用時:C:\Interstage\JDK6\jre\lib\jaxp.properties
JRE使用時:C:\Interstage\JRE6\lib\jaxp.properties
JDK使用時:/opt/FJSVawjbk/jdk6/jre/lib/jaxp.properties
JRE使用時:/opt/FJSVawjbk/jre6/lib/jaxp.properties