クラスSAXParser
XMLReader実装クラスをラップするAPIを定義します。 JAXP 1.0では、このクラスはParserインタフェースをラップしましたが、このインタフェースはXMLReaderに置き換えられています。 移行を簡単にするために、このクラスは新しいメソッドのサポートと同様、同じ名前とインタフェースのサポートも継続します。 このクラスのインスタンスはSAXParserFactory.newSAXParser()メソッドにより取得できます。 このクラスのインスタンスを取得すると、さまざまな入力ソースからXMLドキュメントを構文解析できます。 これらの入力ソースには、InputStream、File、URL、およびSAX InputSourceがあります。 このstaticメソッドは、システム・プロパティ設定に基づいて新しいファクトリ・インスタンスを作成するか、またはプロパティが定義されていない場合にプラットフォームのデフォルトを使用します。
どのファクトリ実装を作成するかを制御するシステム・プロパティの名前は"javax.xml.parsers.SAXParserFactory"です。 このプロパティは、このabstractクラスの具象サブクラスを命名します。 プロパティが定義されていない場合は、プラットフォームのデフォルトが使用されます。
HandlerBaseまたはDefaultHandlerのメソッドが呼び出されます。
基礎となる実装をラップするこのクラスの実装者は、ParserAdapterクラスを使用して、この改訂されたクラスの下で動作するようにSAX1実装を最初に適応させることを検討できます。
- 導入されたバージョン:
- 1.4
-
コンストラクタのサマリー
コンストラクタ -
メソッドのサマリー
修飾子と型メソッド説明abstract Parserこのクラスの実装によってカプセル化されたSAXパーサーを返します。abstract ObjectgetProperty(String name) XMLReaderの基本となる実装で要求された特定のプロパティを返します。XMLプロセッサによって使用されているSchemaへの参照を取得します。abstract XMLReaderこのクラスの実装によりカプセル化されるXMLReaderを返します。abstract booleanこのパーサーが名前空間を認識するように構成されているかどうかを示します。abstract booleanこのパーサーがXMLドキュメントを検証するように構成されているかどうかを示します。booleanこのパーサーのXInclude処理モードを取得します。voidparse(File f, HandlerBase hb) 指定されたファイルの内容を、指定されたHandlerBaseを使用してXMLとして構文解析します。voidparse(File f, DefaultHandler dh) 指定されたファイルの内容を、指定されたDefaultHandlerを使用してXMLとして構文解析します。voidparse(InputStream is, HandlerBase hb) 指定されたHandlerBaseを使用して、指定されたInputStreamインスタンスの内容をXMLとして構文解析します。voidparse(InputStream is, HandlerBase hb, String systemId) 指定されたHandlerBaseを使用して、指定されたInputStreamインスタンスの内容をXMLとして構文解析します。voidparse(InputStream is, DefaultHandler dh) 指定されたDefaultHandlerを使用して、指定されたInputStreamインスタンスの内容をXMLとして構文解析します。voidparse(InputStream is, DefaultHandler dh, String systemId) 指定されたDefaultHandlerを使用して、指定されたInputStreamインスタンスの内容をXMLとして構文解析します。voidparse(String uri, HandlerBase hb) 指定されたURI (Uniform Resource Identifier)で表されたコンテンツを、指定されたHandlerBaseを使用してXMLとして構文解析します。voidparse(String uri, DefaultHandler dh) 指定されたURI (Uniform Resource Identifier)で表わされたコンテンツを、指定されたDefaultHandlerを使用してXMLとして構文解析します。voidparse(InputSource is, HandlerBase hb) 指定されたInputSourceのコンテンツを、指定されたHandlerBaseを使用してXMLとして構文解析します。voidparse(InputSource is, DefaultHandler dh) 指定されたInputSourceのコンテンツを、指定されたDefaultHandlerを使用してXMLとして構文解析します。voidreset()このSAXParserを元の構成にリセットします。abstract voidsetProperty(String name, Object value) XMLReaderの基本となる実装で特定のプロパティを設定します。
-
コンストラクタの詳細
-
SAXParser
protected SAXParser()インスタンス化を妨げるprotectedコンストラクタです。
SAXParserFactory.newSAXParser()を使用してください。
-
-
メソッドの詳細
-
reset
public void reset()この
SAXParserを元の構成にリセットします。SAXParserは、SAXParserFactory.newSAXParser()で作成された時点の状態にリセットされます。reset()は、既存のSAXParserの再使用を許可するように設計されているため、新しいSAXParserの作成に関連するリソースを節約できます。SAXParserをリセットした場合、同じSchemaObject(たとえば、Object.equals(Object obj))を持つことは保証されません。 機能的に同じSchemaを持つことは保証されます。- スロー:
UnsupportedOperationException- 実装がこのメソッドをオーバーライドしない場合。- 導入されたバージョン:
- 1.5
-
parse
public void parse(InputStream is, HandlerBase hb) throws SAXException, IOException 指定された
HandlerBaseを使用して、指定されたInputStreamインスタンスの内容をXMLとして構文解析します。 HandlerBaseクラスはSAX 2.0では非推奨であるため、このメソッドのDefaultHandlerバージョンを使用することをお勧めします。- パラメータ:
is- 構文解析されるコンテンツを含むInputStream。hb- 使用するSAX HandlerBase。- スロー:
IllegalArgumentException- 指定されたInputStreamがnullの場合。SAXException- 構文解析でSAXエラーが生成された場合。IOException-InputStreamとのやりとりで入出力エラーが発生した場合。- 関連項目:
-
parse
public void parse(InputStream is, HandlerBase hb, String systemId) throws SAXException, IOException 指定された
HandlerBaseを使用して、指定されたInputStreamインスタンスの内容をXMLとして構文解析します。 HandlerBaseクラスはSAX 2.0では非推奨であるため、このメソッドのDefaultHandlerバージョンを使用することをお勧めします。- パラメータ:
is- 構文解析されるコンテンツを含むInputStream。hb- 使用するSAX HandlerBase。systemId- 相対URIを解決するのに必要なシステム識別子。- スロー:
IllegalArgumentException- 指定されたInputStreamがnullである場合。IOException-InputStreamとのやりとりで入出力エラーが発生した場合。SAXException- 処理中にSAXエラーが発生した場合。- 関連項目:
-
parse
public void parse(InputStream is, DefaultHandler dh) throws SAXException, IOException 指定されたDefaultHandlerを使用して、指定されたInputStreamインスタンスの内容をXMLとして構文解析します。- パラメータ:
is- 構文解析されるコンテンツを含むInputStream。dh- 使用するSAX DefaultHandler。- スロー:
IllegalArgumentException- 指定されたInputStreamがnullの場合。IOException- 入出力エラーが発生した場合。SAXException- 処理中にSAXエラーが発生した場合。- 関連項目:
-
parse
public void parse(InputStream is, DefaultHandler dh, String systemId) throws SAXException, IOException 指定されたDefaultHandlerを使用して、指定されたInputStreamインスタンスの内容をXMLとして構文解析します。- パラメータ:
is- 構文解析されるコンテンツを含むInputStream。dh- 使用するSAX DefaultHandler。systemId- 相対URIを解決するのに必要なシステム識別子。- スロー:
IllegalArgumentException- 指定されたInputStreamがnullの場合。IOException- 入出力エラーが発生した場合。SAXException- 処理中にSAXエラーが発生した場合。- 関連項目:
-
parse
public void parse(String uri, HandlerBase hb) throws SAXException, IOException 指定されたURI (Uniform Resource Identifier)で表されたコンテンツを、指定されたHandlerBaseを使用してXMLとして構文解析します。HandlerBaseクラスはSAX 2.0では非推奨であるため、このメソッドのDefaultHandlerバージョンを使用することをお勧めします- パラメータ:
uri- 構文解析されるコンテンツの場所。hb- 使用するSAX HandlerBase。- スロー:
IllegalArgumentException- uriがnullの場合。IOException- 入出力エラーが発生した場合。SAXException- 処理中にSAXエラーが発生した場合。- 関連項目:
-
parse
public void parse(String uri, DefaultHandler dh) throws SAXException, IOException 指定されたURI (Uniform Resource Identifier)で表わされたコンテンツを、指定されたDefaultHandlerを使用してXMLとして構文解析します。- パラメータ:
uri- 構文解析されるコンテンツの場所。dh- 使用するSAX DefaultHandler。- スロー:
IllegalArgumentException- uriがnullの場合。IOException- 入出力エラーが発生した場合。SAXException- 処理中にSAXエラーが発生した場合。- 関連項目:
-
parse
public void parse(File f, HandlerBase hb) throws SAXException, IOException 指定されたファイルの内容を、指定されたHandlerBaseを使用してXMLとして構文解析します。 HandlerBaseクラスはSAX 2.0では非推奨のため、このメソッドのDefaultHandlerバージョンを使用することをお勧めします。- パラメータ:
f- 構文解析対象のXMLを含むファイルhb- 使用するSAX HandlerBase。- スロー:
IllegalArgumentException- Fileオブジェクトがnullの場合。IOException- 入出力エラーが発生した場合。SAXException- 処理中にSAXエラーが発生した場合。- 関連項目:
-
parse
public void parse(File f, DefaultHandler dh) throws SAXException, IOException 指定されたファイルの内容を、指定されたDefaultHandlerを使用してXMLとして構文解析します。- パラメータ:
f- 構文解析対象のXMLを含むファイルdh- 使用するSAX DefaultHandler。- スロー:
IllegalArgumentException- Fileオブジェクトがnullの場合。IOException- 入出力エラーが発生した場合。SAXException- 処理中にSAXエラーが発生した場合。- 関連項目:
-
parse
public void parse(InputSource is, HandlerBase hb) throws SAXException, IOException 指定されたInputSourceのコンテンツを、指定されたHandlerBaseを使用してXMLとして構文解析します。 HandlerBaseクラスはSAX 2.0では非推奨のため、このメソッドのDefaultHandlerバージョンを使用することをお勧めします。- パラメータ:
is- 構文解析されるコンテンツを含むInputSource。hb- 使用するSAX HandlerBase。- スロー:
IllegalArgumentException-InputSourceオブジェクトがnullの場合。IOException- 入出力エラーが発生した場合。SAXException- 処理中にSAXエラーが発生した場合。- 関連項目:
-
parse
public void parse(InputSource is, DefaultHandler dh) throws SAXException, IOException 指定されたInputSourceのコンテンツを、指定されたDefaultHandlerを使用してXMLとして構文解析します。- パラメータ:
is- 構文解析されるコンテンツを含むInputSource。dh- 使用するSAX DefaultHandler。- スロー:
IllegalArgumentException-InputSourceオブジェクトがnullの場合。IOException- 入出力エラーが発生した場合。SAXException- 処理中にSAXエラーが発生した場合。- 関連項目:
-
getParser
public abstract Parser getParser() throws SAXExceptionこのクラスの実装によってカプセル化されたSAXパーサーを返します。- 戻り値:
- このクラスの実装によってカプセル化されたSAXパーサー。
- スロー:
SAXException- 処理中にSAXエラーが発生した場合。
-
getXMLReader
public abstract XMLReader getXMLReader() throws SAXExceptionこのクラスの実装によりカプセル化されるXMLReaderを返します。- 戻り値:
- このクラスの実装によりカプセル化されるXMLReader。
- スロー:
SAXException- 処理中にSAXエラーが発生した場合。
-
isNamespaceAware
public abstract boolean isNamespaceAware()このパーサーが名前空間を認識するように構成されているかどうかを示します。- 戻り値:
- このパーサーが名前空間を認識するように構成されている場合はtrue、そうでない場合はfalse。
-
isValidating
public abstract boolean isValidating()このパーサーがXMLドキュメントを検証するように構成されているかどうかを示します。- 戻り値:
- このパーサーがXMLドキュメントを検証するように構成されている場合はtrue、そうでない場合はfalse。
-
setProperty
public abstract void setProperty(String name, Object value) throws SAXNotRecognizedException, SAXNotSupportedException XMLReaderの基本となる実装で特定のプロパティを設定します。 コア機能とコア・プロパティのリストについては、http://sax.sourceforge.net/?selected=get-setのサイトを参照してください。JAXP 1.5またはそれ以降を実装する実装はすべて、
XMLConstants.ACCESS_EXTERNAL_DTDおよびXMLConstants.ACCESS_EXTERNAL_SCHEMAプロパティをサポートしている必要があります。-
XMLConstants.ACCESS_EXTERNAL_DTDプロパティを設定すると、外部DTDおよび外部エンティティ参照へのアクセスが、そのプロパティで指定されたプロトコルに制限されます。 このプロパティの制限が原因で構文解析中にアクセスが拒否された場合は、SAXParserで定義された解析メソッドによってSAXExceptionがスローされます。XMLConstants.ACCESS_EXTERNAL_SCHEMAプロパティを設定すると、schemaLocation属性によって設定された外部スキーマへのアクセスが、そのプロパティで指定されたプロトコルに制限されます。 このプロパティの制限が原因で構文解析中にアクセスが拒否された場合は、SAXParserで定義された解析メソッドによってSAXExceptionがスローされます。
- パラメータ:
name- 設定するプロパティの名前。value- 設定するプロパティの値。- スロー:
SAXNotRecognizedException- 基本となるXMLReaderがプロパティ名を認識しない場合。SAXNotSupportedException- 基本となるXMLReaderはプロパティ名を認識するが、そのプロパティをサポートしない場合。- 関連項目:
-
-
getProperty
public abstract Object getProperty(String name) throws SAXNotRecognizedException, SAXNotSupportedException XMLReaderの基本となる実装で要求された特定のプロパティを返します。- パラメータ:
name- 取り出されるプロパティの名前。- 戻り値:
- 要求されたプロパティの値。
- スロー:
SAXNotRecognizedException- 基本となるXMLReaderがプロパティ名を認識しない場合。SAXNotSupportedException- 基本となるXMLReaderはプロパティ名を認識するが、そのプロパティをサポートしない場合。- 関連項目:
-
getSchema
public Schema getSchema()XMLプロセッサによって使用されている
Schemaへの参照を取得します。スキーマを使用していない場合は
nullが返されます。- 戻り値:
- 使用されている
Schemaまたは使用されていない場合はnull - スロー:
UnsupportedOperationException- 実装がこのメソッドをオーバーライドしない場合- 導入されたバージョン:
- 1.5
-
isXIncludeAware
public boolean isXIncludeAware()このパーサーのXInclude処理モードを取得します。
- 戻り値:
- このパーサーがファクトリから作成されたときに
SAXParserFactory.isXIncludeAware()から返される値。 - スロー:
UnsupportedOperationException- 実装がこのメソッドをオーバーライドしない場合- 導入されたバージョン:
- 1.5
- 関連項目:
-