XMLReader
インタフェースで置き換えられています。public interface Parser
このモジュールは、ソース・コード、文書ともに公開ドメインに置かれています。したがって、内容に関する保証は一切提供されません。詳細については、http://www.saxproject.orgを参照してください。
SAX1のメインのイベント提供インタフェースでしたが、SAX2で、名前空間機能と高度な構成および拡張機能をサポートするXMLReader
に置き換えられました。
すべてのSAX1パーサーは、この基本インタフェースを実装する必要があります。アプリケーションは、さまざまな型のイベント・ハンドラを登録する際や、URIまたは文字ストリームから構文解析を開始する際にこのインタフェースを使用します。
すべてのSAX1パーサーは、引数なしのコンストラクタも実装しなければいけません(その他のコンストラクタも使用可能)。
SAX1パーサーは再利用可能ですが、再入不可能です。つまり最初の構文解析が終了したら、アプリケーションはパーサー・オブジェクトを再利用できますが(別の入力ソースでの再利用も可能)、1回の構文解析でparse()メソッドを繰返し呼び出すことはできません。
EntityResolver
, DTDHandler
, DocumentHandler
, ErrorHandler
, HandlerBase
, InputSource
修飾子と型 | メソッドと説明 |
---|---|
void |
parse(InputSource source)
非推奨。
XML文書を構文解析します。
|
void |
parse(String systemId)
非推奨。
システム識別子(URI)からXML文書を構文解析します。
|
void |
setDocumentHandler(DocumentHandler handler)
非推奨。
アプリケーションに文書イベント・ハンドラの登録を許可します。
|
void |
setDTDHandler(DTDHandler handler)
非推奨。
アプリケーションにDTDイベント・ハンドラの登録を許可します。
|
void |
setEntityResolver(EntityResolver resolver)
非推奨。
アプリケーションにカスタム・エンティティ・リゾルバの登録を許可します。
|
void |
setErrorHandler(ErrorHandler handler)
非推奨。
アプリケーションにエラー・イベント・ハンドラの登録を許可します。
|
void |
setLocale(Locale locale)
非推奨。
アプリケーションにエラーや警告のロケールの要求を許可します。
|
void setLocale(Locale locale) throws SAXException
SAXパーサーはエラーおよび警告のローカライズを義務付けられていません。しかし、要求されたロケールをサポートしていない場合はSAX例外をスローする必要があります。構文解析中は、アプリケーションからロケールの変更を要求できません。
locale
- Java Localeオブジェクト。SAXException
- 要求されたロケールがサポートされていない場合、前のロケールまたはデフォルトのロケールを使って例外をスローする。SAXException
, SAXParseException
void setEntityResolver(EntityResolver resolver)
アプリケーションがエンティティ・リゾルバを登録しないと、SAXパーサーはシステム識別子を解決し、エンティティ自体への接続を開始します(HandlerBaseのデフォルトの動作実装)。
アプリケーションは、構文解析中も新しいエンティティ・リゾルバを登録できます。新しいリゾルバが登録されると、SAXパーサーはただちにこのリゾルバの使用を開始しなければいけません。
resolver
- エンティティを解決するためのオブジェクト。EntityResolver
, HandlerBase
void setDTDHandler(DTDHandler handler)
アプリケーションがDTDハンドラを登録しないと、SAXパーサーが報告するすべてのDTDイベントは何の通知もなく無視されます(HandlerBaseのデフォルトの動作実装)。
アプリケーションは、構文解析中も新しいハンドラを登録できます。新しいハンドラが登録されると、SAXパーサーはただちにこのハンドラの使用を開始しなければいけません。
handler
- DTDハンドラ。DTDHandler
, HandlerBase
void setDocumentHandler(DocumentHandler handler)
アプリケーションが文書ハンドラを登録しないと、SAXパーサーが報告するすべての文書イベントは何の通知もなく無視されます(HandlerBaseのデフォルトの動作実装)。
アプリケーションは、構文解析中も新しいハンドラを登録できます。新しいハンドラが登録されると、SAXパーサーはただちにこのハンドラの使用を開始しなければいけません。
handler
- 文書ハンドラ。DocumentHandler
, HandlerBase
void setErrorHandler(ErrorHandler handler)
アプリケーションがエラー・イベント・ハンドラを登録しないと、SAXパーサーが報告するエラー・イベントは何の通知もなく無視されます。ただし、fatalErrorだけは例外です。このエラー・イベントはSAXExceptionをスローします(HandlerBaseのデフォルトの動作実装)。
アプリケーションは、構文解析中も新しいハンドラを登録できます。新しいハンドラが登録されると、SAXパーサーはただちにこのハンドラの使用を開始しなければいけません。
handler
- エラー・ハンドラ。ErrorHandler
, SAXException
, HandlerBase
void parse(InputSource source) throws SAXException, IOException
アプリケーションは、このメソッドを使って、有効な任意の入力ソース(文字ストリーム、バイト・ストリーム、またはURI)からXML文書の構文解析を開始するようにSAXパーサーに指示を送ります。
構文解析中は、アプリケーションからこのメソッドを呼び出すことはできません。追加するXML文書がある場合はその1つ1つに新しいParserを作成する必要があります。構文解析が完了したら、同じParserオブジェクトを再利用できます。別の入力ソースでの再利用も可能です。
source
- XML文書のトップ・レベルの入力ソース。SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。IOException
- パーサーからのIO例外。アプリケーションが提供するバイト・ストリームまたは文字ストリームから発生する可能性があります。InputSource
, parse(java.lang.String)
, setEntityResolver(org.xml.sax.EntityResolver)
, setDTDHandler(org.xml.sax.DTDHandler)
, setDocumentHandler(org.xml.sax.DocumentHandler)
, setErrorHandler(org.xml.sax.ErrorHandler)
void parse(String systemId) throws SAXException, IOException
このメソッドを使用すれば、システム識別子から簡単に文書を読み取ることができます。次の指定でも同じことができます。
parse(new InputSource(systemId));
システム識別子がURLの場合、アプリケーションはこれをパーサーに渡す前に完全に解決する必要があります。
systemId
- システム識別子(URI)。SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。IOException
- パーサーからのIO例外。アプリケーションが提供するバイト・ストリームまたは文字ストリームから発生する可能性があります。parse(org.xml.sax.InputSource)
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.