public abstract class SAXParserFactory extends Object
- 導入されたバージョン:
- 1.4
-
コンストラクタのサマリー
コンストラクタ 修飾子 コンストラクタ 説明 protectedSAXParserFactory()newInstance()を強制的に使用するprotectedコンストラクタです。 -
メソッドのサマリー
修飾子と型 メソッド 説明 abstract booleangetFeature(String name)org.xml.sax.XMLReaderの基本となる実装で要求された特定のプロパティを返します。SchemagetSchema()setSchema(Schema schema)メソッドによって指定されたSchemaオブジェクトを取得します。booleanisNamespaceAware()ファクトリが名前空間を認識するパーサーを作成するように構成されているかどうかを示します。booleanisValidating()構文解析時にXMLコンテンツを検証するパーサーを作成するようにファクトリが構成されているかどうかを示します。booleanisXIncludeAware()XInclude処理の状態を取得します。static SAXParserFactorynewDefaultInstance()SAXParserFactory組み込みシステムのデフォルト実装の新しいインスタンスを作成します。static SAXParserFactorynewDefaultNSInstance()SAXParserFactory組込みシステムのデフォルト実装の新しいNamespaceAwareインスタンスを作成します。static SAXParserFactorynewInstance()SAXParserFactoryの新しいインスタンスを取得します。static SAXParserFactorynewInstance(String factoryClassName, ClassLoader classLoader)クラス名からSAXParserFactoryの新しいインスタンスを取得します。static SAXParserFactorynewNSInstance()SAXParserFactoryの新しいNamespaceAwareインスタンスを作成します。static SAXParserFactorynewNSInstance(String factoryClassName, ClassLoader classLoader)クラス名からSAXParserFactoryの新しいNamespaceAwareインスタンスを作成します。abstract SAXParsernewSAXParser()現在構成されているファクトリ・パラメータを使用してSAXParserの新しいインスタンスを作成します。abstract voidsetFeature(String name, boolean value)org.xml.sax.XMLReaderの基本となる実装に特定の機能を設定します。voidsetNamespaceAware(boolean awareness)このファクトリで作成されたパーサーがXML名前空間をサポートするように指定します。voidsetSchema(Schema schema)このファクトリから作成されたパーサーによって使用されるSchemaを設定します。voidsetValidating(boolean validating)このファクトリで作成されたパーサーが構文解析時にドキュメントの妥当性を検証するように指定します。voidsetXIncludeAware(boolean state)XInclude処理の状態を設定します。
-
コンストラクタの詳細
-
SAXParserFactory
protected SAXParserFactory()newInstance()を強制的に使用するprotectedコンストラクタです。
-
-
メソッドの詳細
-
newDefaultNSInstance
public static SAXParserFactory newDefaultNSInstance()SAXParserFactory組込みシステムのデフォルト実装の新しいNamespaceAwareインスタンスを作成します。 ファクトリ・インスタンスによって生成されたパーサーは、デフォルトでXMLネームスペースのサポートを提供します。- 実装要件:
- このメソッドは、
newDefaultInstance()と同じプロセスを使用してファクトリ・インスタンスを作成するだけでなく、NamespaceAwareをtrueに設定する必要があります。 - 戻り値:
SAXParserFactory組込みシステムのデフォルトの実装の新しいインスタンス。- 導入されたバージョン:
- 13
-
newNSInstance
public static SAXParserFactory newNSInstance()SAXParserFactoryの新しいNamespaceAwareインスタンスを作成します。 ファクトリ・インスタンスによって生成されたパーサーは、デフォルトでXMLネームスペースのサポートを提供します。- 実装要件:
- このメソッドは、
newInstance()と同じプロセスを使用してファクトリ・インスタンスを作成するだけでなく、NamespaceAwareをtrueに設定する必要があります。 - 戻り値:
SAXParserFactoryの新規インスタンス- 例外:
FactoryConfigurationError- サービス構成エラーが発生した場合、または実装が使用できないかインスタンス化できない場合。- 導入されたバージョン:
- 13
-
newNSInstance
public static SAXParserFactory newNSInstance(String factoryClassName, ClassLoader classLoader)クラス名からSAXParserFactoryの新しいNamespaceAwareインスタンスを作成します。 ファクトリ・インスタンスによって生成されたパーサーは、デフォルトでXMLネームスペースのサポートを提供します。- 実装要件:
- このメソッドは、
newInstance(java.lang.String, java.lang.ClassLoader)と同じプロセスを使用してファクトリ・インスタンスを作成するだけでなく、NamespaceAwareをtrueに設定する必要があります。 - パラメータ:
factoryClassName-javax.xml.parsers.SAXParserFactoryの実装を提供する完全修飾ファクトリ・クラス名。classLoader- ファクトリ・クラスをロードするために使用するClassLoader。nullの場合、現在のThreadコンテキストclassLoaderがファクトリ・クラスをロードするために使用されます。- 戻り値:
SAXParserFactoryの新規インスタンス- 例外:
FactoryConfigurationError-factoryClassNameがnull、またはファクトリ・クラスをロードまたはインスタンス化できない場合。- 導入されたバージョン:
- 13
-
newDefaultInstance
public static SAXParserFactory newDefaultInstance()SAXParserFactory組み込みシステムのデフォルト実装の新しいインスタンスを作成します。- 戻り値:
SAXParserFactory組み込みシステムのデフォルト実装の新しいインスタンス。- 導入されたバージョン:
- 9
-
newInstance
public static SAXParserFactory newInstance()SAXParserFactoryの新しいインスタンスを取得します。 このstaticメソッドは新しいファクトリ・インスタンスを作成します。このメソッドは次の順序のルックアップ手順で、ロードするSAXParserFactory実装クラスを判定します。-
javax.xml.parsers.SAXParserFactoryシステム・プロパティを使用する。 -
構成ファイル"jaxp.properties"を使用します。 このファイルは標準の
Properties形式であり、通常Javaインストールのconfディレクトリにあります。 これには、実装クラスの完全修飾名が格納されています。jaxp.propertiesファイルはJAXP実装によって一度だけ読み込まれ、その値は将来の使用のためにキャッシュされます。 最初の読込み時にファイルが存在しないと、そのあとにその存在がチェックされることはない。 最初に読み込まれたあと、jaxp.propertiesのプロパティの値を変更することはできない。
-
ServiceLoaderクラスで定義されているサービス・プロバイダ・ローディング機能を使用して、デフォルトのロード・メカニズムを使用してサービスの実装を特定してロード: サービス・プロバイダ・ローディング機能は、現在のスレッド・コンテキスト・クラス・ローダーを使用してサービスをロードしようとします。 コンテキスト・クラス・ローダーがnullの場合、システム・クラス・ローダーが使用されます。 -
それ以外の場合は、system-default実装が返されます。
アプリケーションが
SAXParserFactoryへの参照を取得すると、ファクトリを使用してパーサーのインスタンスを構成および取得できます。Tip for Trouble-shooting
jaxp.debugシステム・プロパティを設定すると、このメソッドは実行中の処理や検索している場所に関する大量のデバッグ・メッセージをSystem.errに出力します。SAXParserのロードに問題がある場合、次のようにします。java -Djaxp.debug=1 YourProgram ....
- 戻り値:
- SAXParserFactoryの新しいインスタンス。
- 例外:
FactoryConfigurationError- サービス構成エラーが発生した場合、または実装が使用できないかインスタンス化できない場合。
-
-
newInstance
public static SAXParserFactory newInstance(String factoryClassName, ClassLoader classLoader)クラス名からSAXParserFactoryの新しいインスタンスを取得します。 この関数は、クラス・パスに複数のプロバイダがある場合に便利です。 どのプロバイダがロードされるかを指定できるため、アプリケーションをさらに制御できます。アプリケーションが
SAXParserFactoryへの参照を取得すると、ファクトリを使用してパーサーのインスタンスを構成および取得できます。Tip for Trouble-shooting
jaxp.debugシステム・プロパティを設定すると、このメソッドは実行中の処理や検索している場所に関する大量のデバッグ・メッセージをSystem.errに出力します。問題がある場合、次のようにします。
java -Djaxp.debug=1 YourProgram ....
- パラメータ:
factoryClassName-javax.xml.parsers.SAXParserFactoryの実装を提供する完全修飾のファクトリ・クラス名。classLoader- ファクトリ・クラスのロードに使用されるClassLoader。nullの場合は、現在のThreadのコンテキストclassLoaderが、ファクトリ・クラスのロードに使用されます。- 戻り値:
SAXParserFactoryの新しいインスタンス- 例外:
FactoryConfigurationError-factoryClassNameがnull、またはファクトリ・クラスをロードまたはインスタンス化できない場合。- 導入されたバージョン:
- 1.6
- 関連項目:
newInstance()
-
newSAXParser
public abstract SAXParser newSAXParser() throws ParserConfigurationException, SAXException現在構成されているファクトリ・パラメータを使用してSAXParserの新しいインスタンスを作成します。- 戻り値:
- SAXParserの新しいインスタンス。
- 例外:
ParserConfigurationException- 要求された構成を満たすパーサーを生成できない場合。SAXException- SAXエラーの場合。
-
setNamespaceAware
public void setNamespaceAware(boolean awareness)このファクトリで作成されたパーサーがXML名前空間をサポートするように指定します。 デフォルトでは、この値はfalseに設定されます。- パラメータ:
awareness- このコードで作成されたパーサーがXML名前空間をサポートする場合はtrue、そうでない場合はfalse。
-
setValidating
public void setValidating(boolean validating)このファクトリで作成されたパーサーが構文解析時にドキュメントの妥当性を検証するように指定します。 デフォルトでは、この値はfalseに設定されます。ここで言う「検証」とは、XML勧告で定義されている妥当性を検証するパーサーという意味です。 つまり、実質的にはDTD検証を制御するだけということです。ただし、JAXP 1.2に定義されている従来の2つのプロパティを除きます。
DTDではなく、W3C XML SchemaまたはRELAX NGなどの新しいスキーマ言語を使用する場合は、
setValidating(boolean)メソッドをfalseにして妥当性を検証しないパーサーとして構成してから、setSchema(Schema)メソッドでスキーマをパーサーに関連付けます。- パラメータ:
validating- このコードで作成されたパーサーが構文解析時にドキュメントの妥当性を検証する場合はtrue、そうでない場合はfalse。
-
isNamespaceAware
public boolean isNamespaceAware()ファクトリが名前空間を認識するパーサーを作成するように構成されているかどうかを示します。- 戻り値:
- ファクトリが名前空間を認識するパーサーを作成するように構成されている場合はtrue、そうでない場合はfalse。
-
isValidating
public boolean isValidating()構文解析時にXMLコンテンツを検証するパーサーを作成するようにファクトリが構成されているかどうかを示します。- 戻り値:
- 構文解析時にXMLコンテンツを検証するパーサーを作成するようにファクトリが構成されている場合はtrue、そうでない場合はfalse。
-
setFeature
public abstract void setFeature(String name, boolean value) throws ParserConfigurationException, SAXNotRecognizedException, SAXNotSupportedExceptionorg.xml.sax.XMLReaderの基本となる実装に特定の機能を設定します。 コア機能とコア・プロパティのリストについては、http://www.saxproject.org/のサイトを参照してください。実装はすべて、
XMLConstants.FEATURE_SECURE_PROCESSING機能をサポートしている必要があります。 この機能については次のとおりです。-
true: 実装は実装限界に準拠するXML処理を制限します。 例は、エンティティ拡張制限や大容量のリソースを消費するXMLスキーマなど。 セキュリティ上の理由からXML処理が制限される場合は、登録済みのErrorHandler.fatalError(SAXParseException exception)へ呼出しを介して報告されます。 ハンドラ仕様については、SAXParserparseメソッドを参照してください。 -
機能が
falseの場合、実装は、実装限界にかまわず、XML仕様に従ってXMLを処理します。
- パラメータ:
name- 設定される機能の名前。value- 設定される機能の値。- 例外:
ParserConfigurationException- 要求された構成を満たすパーサーを生成できない場合。SAXNotRecognizedException- 基本となるXMLReaderがプロパティ名を認識しない場合。SAXNotSupportedException- 基本となるXMLReaderはプロパティ名を認識するが、そのプロパティをサポートしない場合。NullPointerException-nameパラメータがnullである場合。- 関連項目:
XMLReader.setFeature(java.lang.String, boolean)
-
-
getFeature
public abstract boolean getFeature(String name) throws ParserConfigurationException, SAXNotRecognizedException, SAXNotSupportedExceptionorg.xml.sax.XMLReaderの基本となる実装で要求された特定のプロパティを返します。- パラメータ:
name- 取り出されるプロパティの名前。- 戻り値:
- 要求されたプロパティの値。
- 例外:
ParserConfigurationException- 要求された構成を満たすパーサーを生成できない場合。SAXNotRecognizedException- 基本となるXMLReaderがプロパティ名を認識しない場合。SAXNotSupportedException- 基本となるXMLReaderはプロパティ名を認識するが、そのプロパティをサポートしない場合。- 関連項目:
XMLReader.getProperty(java.lang.String)
-
getSchema
public Schema getSchema()setSchema(Schema schema)メソッドによって指定されたSchemaオブジェクトを取得します。- 戻り値:
setSchema(Schema)メソッドを介して最後に設定されたSchemaオブジェクト、またはSAXParserFactoryが作成されてからメソッドが呼び出されていない場合はnull。- 例外:
UnsupportedOperationException- 実装がこのメソッドをオーバーライドしない場合- 導入されたバージョン:
- 1.5
-
setSchema
public void setSchema(Schema schema)このファクトリから作成されたパーサーによって使用されるSchemaを設定します。Schemaがnull以外の場合、パーサーは、情報をアプリケーションに渡す前に、ドキュメントを検証するために作成されたバリデータを使用します。バリデータによって警告、エラー、重大なエラーが検出されると、パーサーは自身がこれらのエラーを検出した場合と同様にこれらを処理する必要があります。 つまり、ユーザー指定の
ErrorHandlerが設定されている場合は、これらのエラーを受け取り、そうでない場合は実装固有のデフォルトのエラー処理規則に従って処理される必要があります。バリデータはSAXイベント・ストリームを変更することがあり(たとえば、ドキュメントから失われていたデフォルト値を追加するなど)、パーサーはこれらの変更されたイベント・ストリームをアプリケーションが確実に受け取るようにする役割を持ちます。
最初に、
nullがSchemaとして設定されます。この処理は
isValidating()メソッドがfalseを返した場合でも有効です。http://java.sun.com/xml/jaxp/properties/schemaSourceプロパティまたはhttp://java.sun.com/xml/jaxp/properties/schemaLanguageプロパティをnull以外のSchemaオブジェクトと一緒に使用するとエラーになります。 これらのプロパティがSAXParserに設定されていると、そのような構成によってSAXException例外が発生します。Note for implementors
パーサーは、あらゆる
Schema実装で動作できる必要があります。 ただし、パーサーおよびスキーマが仕様に記載されている結果を出すかぎり、実装固有のカスタム・メカニズムを使用できます。- パラメータ:
schema- 使用するSchema、スキーマを削除するにはnull。- 例外:
UnsupportedOperationException- 実装がこのメソッドをオーバーライドしない場合- 導入されたバージョン:
- 1.5
-
setXIncludeAware
public void setXIncludeAware(boolean state)XInclude処理の状態を設定します。ドキュメント・インスタンスにXIncludeマークアップが見つかった場合、「XML Inclusions (XInclude) Version 1.0」に指定されているとおりに処理する必要があります。
XInclude処理のデフォルトは
falseに設定されます。- パラメータ:
state- XInclude処理をtrueまたはfalseに設定する- 例外:
UnsupportedOperationException- 実装がこのメソッドをオーバーライドしない場合- 導入されたバージョン:
- 1.5
-
isXIncludeAware
public boolean isXIncludeAware()XInclude処理の状態を取得します。- 戻り値:
- XInclude処理の現在の状態
- 例外:
UnsupportedOperationException- 実装がこのメソッドをオーバーライドしない場合- 導入されたバージョン:
- 1.5
-