Cosminexus V9 アプリケーションサーバ Cosminexus XML Processor ユーザーズガイド

[目次][用語][索引][前へ][次へ]

3.7.1 パーサ切り替え機能の概要

パーサ切り替え機能は,XML ProcessorのXML実装と,フレームワークまたはユーザが指定したXML実装との優先順を切り替えられる機能です。この機能を使うことで,フレームワークに同梱されたXML実装へ切り替えられます。

パーサ切り替え機能を使用することで,他社製のXML実装を前提とするフレームワークを使用したアプリケーションでも,XML実装を切り替えられます。ただし,パーサ切り替え機能では,アプリケーションサーバのコンポーネントが使用するXML実装をXML Processorから切り替えることはできません。

<この項の構成>
(1) パーサ切り替え機能の有効範囲
(2) 対象となるXML実装の種類

(1) パーサ切り替え機能の有効範囲

パーサ切り替え機能の有効範囲はJ2EEサーバ単位です。パーサ切り替えの設定がほかのJ2EEサーバに影響を与えることはありません。

また,パーサ切り替え機能を有効にした場合でも,J2EEサーバ起動やデプロイの実行に関しては,ユーザが指定したXML実装ではなくXML Processorが使用されます。パーサ切り替え機能の有効範囲を次の図に示します。

図3-20 パーサ切り替え機能の有効範囲

[図データ]

(2) 対象となるXML実装の種類

JAXP,StAX,JAXBの各APIで,XML実装を切り替えられるメソッドを次の表に示します。

表3-9 XML実装を切り替えられるメソッド名

項番 APIの種類 クラス名 メソッド名
1 JAXP API javax.xml.datatype.DatatypeFactory newInstance()
2 javax.xml.parsers.DocumentBuilderFactory newInstance()
3 javax.xml.parsers.SAXParserFactory newInstance()
4 javax.xml.transform.TransformerFactory newInstance()
5 javax.xml.transform.sax.SAXTransformerFactory newInstance()
6 javax.xml.validation.SchemaFactory newInstance(String schemaLanguage)
7 javax.xml.xpath.XPathFactory newInstance()
8 newInstance(String URI)
9 org.w3c.dom.bootstrap.DOMImplementationRegistry newInstance()
10 org.xml.sax.helpers.XMLReaderFactory createXMLReader()
11 StAX API javax.xml.stream.XMLInputFactory newInstance()
12 newFactory()
13 javax.xml.stream.XMLOutputFactory newInstance()
14 newFactory()
15 javax.xml.stream.XMLEventFactory newInstance()
16 newFactory()
17 JAXB API javax.xml.bind.JAXBContext newInstance(Class... classesToBeBound)
18 newInstance(Class[] classesToBeBound, Map<String,?> properties)
19 newInstance(String contextPath)
20 newInstance(String contextPath, ClassLoader classLoader)
21 newInstance(String contextPath, ClassLoader classLoader, Map<String,?> properties)