public abstract class SAXParser extends Object
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実装をこの改訂されたクラスの下で動作するように、最初に適合させることを考慮できます。
修飾子 | コンストラクタと説明 |
---|---|
protected |
SAXParser()
インストールを妨げるprotectedコンストラクタです。
|
修飾子と型 | メソッドと説明 |
---|---|
abstract Parser |
getParser()
このクラスの実装によりカプセル化されるSAXパーサーを返します。
|
abstract Object |
getProperty(String name)
XMLReader のベースとなる実装で要求された特定のプロパティを返します。 |
Schema |
getSchema()
XMLプロセッサによって使用される
Schema への参照を取得します。 |
abstract XMLReader |
getXMLReader()
このクラスの実装によりカプセル化される
XMLReader を返します。 |
abstract boolean |
isNamespaceAware()
このパーサーが名前空間を認識するように構成されているかどうかを示します。
|
abstract boolean |
isValidating()
このパーサーがXMLドキュメントを検証するように構成されているかどうかを示します。
|
boolean |
isXIncludeAware()
このパーサーのXInclude処理モードを取得します。
|
void |
parse(File f, DefaultHandler dh)
指定されたファイルの内容を、指定された
DefaultHandler を使用してXMLとして構文解析します。 |
void |
parse(File f, HandlerBase hb)
指定されたファイルの内容を、指定された
HandlerBase を使用してXMLとして構文解析します。 |
void |
parse(InputSource is, DefaultHandler dh)
指定された
InputSource のコンテンツを、指定されたDefaultHandler を使用してXMLとして構文解析します。 |
void |
parse(InputSource is, HandlerBase hb)
指定された
InputSource のコンテンツを、指定されたHandlerBase を使用してXMLとして構文解析します。 |
void |
parse(InputStream is, DefaultHandler dh)
指定された
DefaultHandler を使用して、指定されたInputStream インスタンスの内容をXMLとして構文解析します。 |
void |
parse(InputStream is, DefaultHandler dh, String systemId)
指定された
DefaultHandler を使用して、指定されたInputStream インスタンスの内容をXMLとして構文解析します。 |
void |
parse(InputStream is, HandlerBase hb)
指定された
HandlerBase を使用して、指定されたInputStream インスタンスの内容をXMLとして構文解析します。 |
void |
parse(InputStream is, HandlerBase hb, String systemId)
指定された
HandlerBase を使用して、指定されたInputStream インスタンスの内容をXMLとして構文解析します。 |
void |
parse(String uri, DefaultHandler dh)
指定されたURI (Uniform Resource Identifier)で表わされたコンテンツを、指定された
DefaultHandler を使用してXMLとして構文解析します。 |
void |
parse(String uri, HandlerBase hb)
指定されたURI (Uniform Resource Identifier)で表されたコンテンツを、指定された
HandlerBase を使用してXMLとして構文解析します。 |
void |
reset()
この
SAXParser を元の構成にリセットします。 |
abstract void |
setProperty(String name, Object value)
XMLReader のベースとなる実装で特定のプロパティを設定します。 |
protected SAXParser()
インストールを妨げるprotectedコンストラクタです。SAXParserFactory.newSAXParser()
を使用してください。
public void reset()
このSAXParser
を元の構成にリセットします。
SAXParser
は、SAXParserFactory.newSAXParser()
で作成された時点の状態にリセットされます。reset()
は、既存のSAXParser
の再使用を許可するように設計されているため、新しいSAXParser
の作成に関連するリソースを節約できます。
SAXParser
をリセットした場合、同じSchema
Object
(たとえば、Object.equals(Object obj)
)を持つことは保証されません。機能的に同じSchema
を持つことは保証されます。
UnsupportedOperationException
- 実装がこのメソッドをオーバーライドしない場合。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
とのやりとりで入出力エラーが発生した場合。DocumentHandler
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エラーが発生した場合。version of this method instead.
public void parse(InputStream is, DefaultHandler dh) throws SAXException, IOException
DefaultHandler
を使用して、指定されたInputStream
インスタンスの内容をXMLとして構文解析します。is
- 構文解析されるコンテンツを含むInputStream。dh
- 使用するSAX DefaultHandler。IllegalArgumentException
- 指定されたInputStreamがnullの場合。IOException
- 入出力エラーが発生した場合。SAXException
- 処理中にSAXエラーが発生した場合。DocumentHandler
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エラーが発生した場合。version of this method instead.
public void parse(String uri, HandlerBase hb) throws SAXException, IOException
HandlerBase
を使用してXMLとして構文解析します。HandlerBase
クラスはSAX 2.0では非推奨であるため、このメソッドのDefaultHandlerバージョンを使用することをお勧めしますuri
- 構文解析されるコンテンツの場所。hb
- 使用するSAX HandlerBase。IllegalArgumentException
- uriがnullの場合。IOException
- 入出力エラーが発生した場合。SAXException
- 処理中にSAXエラーが発生した場合。DocumentHandler
public void parse(String uri, DefaultHandler dh) throws SAXException, IOException
DefaultHandler
を使用してXMLとして構文解析します。uri
- 構文解析されるコンテンツの場所。dh
- 使用するSAX DefaultHandler。IllegalArgumentException
- uriがnullの場合。IOException
- 入出力エラーが発生した場合。SAXException
- 処理中にSAXエラーが発生した場合。DocumentHandler
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エラーが発生した場合。DocumentHandler
public void parse(File f, DefaultHandler dh) throws SAXException, IOException
DefaultHandler
を使用してXMLとして構文解析します。f
- 構文解析対象のXMLを含むファイルdh
- 使用するSAX DefaultHandler。IllegalArgumentException
- Fileオブジェクトがnullの場合。IOException
- 入出力エラーが発生した場合。SAXException
- 処理中にSAXエラーが発生した場合。DocumentHandler
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エラーが発生した場合。DocumentHandler
public void parse(InputSource is, DefaultHandler dh) throws SAXException, IOException
InputSource
のコンテンツを、指定されたDefaultHandler
を使用してXMLとして構文解析します。is
- 構文解析されるコンテンツを含むInputSource。dh
- 使用するSAX DefaultHandler。IllegalArgumentException
- InputSource
オブジェクトがnull
の場合。IOException
- 入出力エラーが発生した場合。SAXException
- 処理中にSAXエラーが発生した場合。DocumentHandler
public abstract Parser getParser() throws SAXException
SAXException
- 処理中にSAXエラーが発生した場合。public abstract XMLReader getXMLReader() throws SAXException
XMLReader
を返します。SAXException
- 処理中にSAXエラーが発生した場合。public abstract boolean isNamespaceAware()
public abstract boolean isValidating()
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はプロパティ名を認識するが、そのプロパティをサポートしない場合。XMLReader.setProperty(java.lang.String, java.lang.Object)
public abstract Object getProperty(String name) throws SAXNotRecognizedException, SAXNotSupportedException
XMLReader
のベースとなる実装で要求された特定のプロパティを返します。
name
- 取り出されるプロパティの名前。SAXNotRecognizedException
- ベースとなるXMLReaderがプロパティ名を認識しない場合。SAXNotSupportedException
- ベースとなるXMLReaderはプロパティ名を認識するが、そのプロパティをサポートしない場合。XMLReader.getProperty(java.lang.String)
public Schema getSchema()
XMLプロセッサによって使用されるSchema
への参照を取得します。
スキーマを使用していない場合はnull
が返されます。
Schema
または使用されていない場合はnull
UnsupportedOperationException
- 実装がこのメソッドをオーバーライドしない場合public boolean isXIncludeAware()
このパーサーのXInclude処理モードを取得します。
SAXParserFactory.isXIncludeAware()
から返される値。UnsupportedOperationException
- 実装がこのメソッドをオーバーライドしない場合SAXParserFactory.setXIncludeAware(boolean)
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.