- java.lang.Object
-
- org.xml.sax.helpers.DefaultHandler
-
- すべての実装されたインタフェース:
ContentHandler
,DTDHandler
,EntityResolver
,ErrorHandler
- 直系の既知のサブクラス:
DefaultHandler2
public class DefaultHandler extends Object implements EntityResolver, DTDHandler, ContentHandler, ErrorHandler
SAX 2イベント・ハンドラのデフォルト基底クラスです。このモジュールは、ソース・コード、文書ともに公開ドメインに置かれています。したがって、内容に関する保証は一切提供されません。 詳細については、http://www.saxproject.orgを参照してください。
このクラスは、SAX2アプリケーション用の簡易基底クラスです。SAX2の4つのコア・ハンドラ・クラスに含まれるすべてのコールバックのデフォルト実装を提供します。
アプリケーションの作成者は、インタフェースの一部だけを実装する必要があるとき、このクラスを拡張します。パーサーの作成者は、アプリケーション固有のデフォルト・ハンドラが提供されないとき、このクラスをインスタンス化してデフォルト・ハンドラを提供します。
このクラスは、非推奨に指定されているSAX1の
HandlerBase
クラスに代わるクラスです。- 導入されたバージョン:
- 1.4, SAX 2.0
- 関連項目:
EntityResolver
,DTDHandler
,ContentHandler
,ErrorHandler
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 DefaultHandler()
-
メソッドのサマリー
修飾子と型 メソッド 説明 void
characters(char[] ch, int start, int length)
要素内の文字データの通知を受け取ります。void
endDocument()
文書の終了通知を受け取ります。void
endElement(String uri, String localName, String qName)
要素の終了通知を受け取ります。void
endPrefixMapping(String prefix)
名前空間マッピングの終了通知を受け取ります。void
error(SAXParseException e)
回復可能なパーサー・エラーの通知を受け取ります。void
fatalError(SAXParseException e)
致命的なXML構文解析エラーを報告します。void
ignorableWhitespace(char[] ch, int start, int length)
要素コンテンツに含まれる無視できる空白文字の通知を受け取ります。void
notationDecl(String name, String publicId, String systemId)
表記法宣言の通知を受け取ります。void
processingInstruction(String target, String data)
処理命令の通知を受け取ります。InputSource
resolveEntity(String publicId, String systemId)
外部エンティティを解決します。void
setDocumentLocator(Locator locator)
文書イベントのLocatorオブジェクトを受け取ります。void
skippedEntity(String name)
スキップされたエンティティの通知を受け取ります。void
startDocument()
文書の開始通知を受け取ります。void
startElement(String uri, String localName, String qName, Attributes attributes)
要素の開始通知を受け取ります。void
startPrefixMapping(String prefix, String uri)
名前空間マッピングの開始通知を受け取ります。void
unparsedEntityDecl(String name, String publicId, String systemId, String notationName)
解析対象外エンティティ宣言の通知を受け取ります。void
warning(SAXParseException e)
パーサー警告の通知を受け取ります。
-
-
-
メソッドの詳細
-
resolveEntity
public InputSource resolveEntity(String publicId, String systemId) throws IOException, SAXException
外部エンティティを解決します。常にnullを返します。これは、パーサーにXML文書内のシステム識別子を使用させるためです。 このメソッドはSAXのデフォルトの動作を実装します。アプリケーションの作成者は、サブクラス内でこれをオーバーライドし、カタログ検索やURIリダイレクションのような特殊な変換を行います。
- 定義:
resolveEntity
、インタフェース:EntityResolver
- パラメータ:
publicId
- 公開識別子。使用できない場合はnull。systemId
- XML文書に含まれているシステム識別子。- 戻り値:
- 新しい入力ソース。デフォルトの動作が必要な場合はnull。
- 例外:
IOException
- 新しい入力ソースの設定中にエラーが発生した場合。SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
EntityResolver.resolveEntity(java.lang.String, java.lang.String)
-
notationDecl
public void notationDecl(String name, String publicId, String systemId) throws SAXException
表記法宣言の通知を受け取ります。デフォルトでは何も行いません。 文書内に宣言された表記法を追跡する必要がある場合、アプリケーションの作成者は、サブクラス内でこのメソッドをオーバーライドします。
- 定義:
notationDecl
、インタフェース:DTDHandler
- パラメータ:
name
- 表記法名。publicId
- 表記法の公開識別子。使用できない場合はnull。systemId
- 表記法のシステム識別子。- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String)
-
unparsedEntityDecl
public void unparsedEntityDecl(String name, String publicId, String systemId, String notationName) throws SAXException
解析対象外エンティティ宣言の通知を受け取ります。デフォルトでは何も行いません。 文書内に宣言された解析対象外エンティティを追跡する必要がある場合、アプリケーションの作成者は、サブクラス内でこのメソッドをオーバーライドします。
- 定義:
unparsedEntityDecl
、インタフェース:DTDHandler
- パラメータ:
name
- エンティティ名。publicId
- エンティティの公開識別子。使用できない場合はnull。systemId
- エンティティのシステム識別子。notationName
- 関連表記法名。- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
-
setDocumentLocator
public void setDocumentLocator(Locator locator)
文書イベントのLocatorオブジェクトを受け取ります。デフォルトでは何も行いません。 その他の文書イベントで使用するためにロケータを格納しておく必要がある場合、アプリケーションの作成者は、サブクラス内でこのメソッドをオーバーライドします。
- 定義:
setDocumentLocator
、インタフェース:ContentHandler
- パラメータ:
locator
- すべてのSAX文書イベントのロケータ。- 関連項目:
ContentHandler.setDocumentLocator(org.xml.sax.Locator)
,Locator
-
startDocument
public void startDocument() throws SAXException
文書の開始通知を受け取ります。デフォルトでは何も行いません。 アプリケーションの作成者は、サブクラス内のこのメソッドをオーバーライドして、文書の先頭で特殊なアクション(ツリーのルート・ノードの割り当て、出力ファイルの作成など)を実行できます。
- 定義:
startDocument
、インタフェース:ContentHandler
- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
ContentHandler.startDocument()
-
endDocument
public void endDocument() throws SAXException
文書の終了通知を受け取ります。デフォルトでは何も行いません。 アプリケーションの作成者は、サブクラス内のこのメソッドをオーバーライドして、文書の終わりで特殊なアクション(ツリーのファイナライズ、出力ファイルの終了など)を実行できます。
- 定義:
endDocument
、インタフェース:ContentHandler
- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
ContentHandler.endDocument()
-
startPrefixMapping
public void startPrefixMapping(String prefix, String uri) throws SAXException
名前空間マッピングの開始通知を受け取ります。デフォルトでは何も行いません。 アプリケーションの作成者は、サブクラス内でこのメソッドをオーバーライドして、各名前空間接頭辞のスコープの開始位置で特定のアクション(接頭辞のマッピングの格納など)を実行できます。
- 定義:
startPrefixMapping
、インタフェース:ContentHandler
- パラメータ:
prefix
- 宣言される名前空間接頭辞。uri
- 接頭辞にマッピングされた名前空間URI。- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
ContentHandler.startPrefixMapping(java.lang.String, java.lang.String)
-
endPrefixMapping
public void endPrefixMapping(String prefix) throws SAXException
名前空間マッピングの終了通知を受け取ります。デフォルトでは何も行いません。 アプリケーションの作成者は、サブクラス内でこのメソッドをオーバーライドして、個々の接頭辞の終了位置で特定のアクションを実行できます。
- 定義:
endPrefixMapping
、インタフェース:ContentHandler
- パラメータ:
prefix
- 宣言される名前空間接頭辞。- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
ContentHandler.endPrefixMapping(java.lang.String)
-
startElement
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException
要素の開始通知を受け取ります。デフォルトでは何も行いません。 アプリケーションの作成者は、サブクラス内のこのメソッドをオーバーライドして、各要素の先頭で特殊なアクション(新しいツリー・ノードの割当て、出力内容のファイルへの書込みなど)を実行できます。
- 定義:
startElement
、インタフェース:ContentHandler
- パラメータ:
uri
- 名前空間URI。要素が名前空間URIを持たない場合、または名前空間処理が実行されない場合は空文字列。localName
- 接頭辞なしのローカル名。名前空間処理が実行されない場合は空文字列。qName
- 接頭辞付きの修飾名。修飾名を使用できない場合は空文字列。attributes
- 要素に付加された属性。 属性が存在しない場合、空のAttributesオブジェクト。- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
ContentHandler.startElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)
-
endElement
public void endElement(String uri, String localName, String qName) throws SAXException
要素の終了通知を受け取ります。デフォルトでは何も行いません。 アプリケーションの作成者は、サブクラス内のこのメソッドをオーバーライドして、各要素の終わりで特殊なアクション(ツリー・ノードのファイナライズ、出力内容のファイルへの書き込みなど)を実行できます。
- 定義:
endElement
、インタフェース:ContentHandler
- パラメータ:
uri
- 名前空間URI。要素が名前空間URIを持たない場合、または名前空間処理が実行されない場合は空文字列。localName
- 接頭辞なしのローカル名。名前空間処理が実行されない場合は空文字列。qName
- 接頭辞付きの修飾名。修飾名を使用できない場合は空文字列。- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
ContentHandler.endElement(java.lang.String, java.lang.String, java.lang.String)
-
characters
public void characters(char[] ch, int start, int length) throws SAXException
要素内の文字データの通知を受け取ります。デフォルトでは何も行いません。 アプリケーションの作成者は、このメソッドをオーバーライドして、各文字データ・チャンクに対して特殊なアクション(ノードまたはバッファへのデータの追加、データのファイルへの出力など)を実行できます。
- 定義:
characters
、インタフェース:ContentHandler
- パラメータ:
ch
- 文字。start
- 文字配列内の開始位置。length
- 文字配列から使用される文字数。- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
ContentHandler.characters(char[], int, int)
-
ignorableWhitespace
public void ignorableWhitespace(char[] ch, int start, int length) throws SAXException
要素コンテンツに含まれる無視できる空白文字の通知を受け取ります。デフォルトでは何も行いません。 アプリケーションの作成者は、このメソッドをオーバーライドして、無視できる空白文字の各チャンクに対して特殊なアクション(ノードまたはバッファへのデータの追加、データのファイルへの出力など)を実行できます。
- 定義:
ignorableWhitespace
、インタフェース:ContentHandler
- パラメータ:
ch
- 空白文字。start
- 文字配列内の開始位置。length
- 文字配列から使用される文字数。- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
ContentHandler.ignorableWhitespace(char[], int, int)
-
processingInstruction
public void processingInstruction(String target, String data) throws SAXException
処理命令の通知を受け取ります。デフォルトでは何も行いません。 アプリケーションの作成者は、サブクラス内のこのメソッドをオーバーライドして、各処理命令に対して特殊なアクション(ステータス変数の設定、その他のメソッドの呼び出しなど)を実行できます。
- 定義:
processingInstruction
、インタフェース:ContentHandler
- パラメータ:
target
- 処理命令のターゲット。data
- 処理命令データ。データが提供されない場合はnull。- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
ContentHandler.processingInstruction(java.lang.String, java.lang.String)
-
skippedEntity
public void skippedEntity(String name) throws SAXException
スキップされたエンティティの通知を受け取ります。デフォルトでは何も行いません。 アプリケーションの作成者は、サブクラス内のこのメソッドをオーバーライドして、各処理命令に対して特殊なアクション(ステータス変数の設定、その他のメソッドの呼び出しなど)を実行できます。
- 定義:
skippedEntity
、インタフェース:ContentHandler
- パラメータ:
name
- スキップされたエンティティの名前。- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
ContentHandler.processingInstruction(java.lang.String, java.lang.String)
-
warning
public void warning(SAXParseException e) throws SAXException
パーサー警告の通知を受け取ります。デフォルト実装は何も実行しません。 アプリケーションの作成者は、サブクラス内のこのメソッドをオーバーライドして、各警告に対して特殊なアクション(ログ・ファイルへのメッセージの挿入、メッセージのコンソールへの出力など)を実行できます。
- 定義:
warning
、インタフェース:ErrorHandler
- パラメータ:
e
- 例外としてエンコードされた警告情報。- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
ErrorHandler.warning(org.xml.sax.SAXParseException)
,SAXParseException
-
error
public void error(SAXParseException e) throws SAXException
回復可能なパーサー・エラーの通知を受け取ります。デフォルト実装は何も実行しません。 アプリケーションの作成者は、サブクラス内のこのメソッドをオーバーライドして、各エラーに対して特殊なアクション(ログ・ファイルへのメッセージの挿入、メッセージのコンソールへの出力など)を実行できます。
- 定義:
error
、インタフェース:ErrorHandler
- パラメータ:
e
- 例外としてエンコードされたエラー情報。- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
ErrorHandler.warning(org.xml.sax.SAXParseException)
,SAXParseException
-
fatalError
public void fatalError(SAXParseException e) throws SAXException
致命的なXML構文解析エラーを報告します。デフォルトの実装ではSAXParseExceptionをスローします。 アプリケーションの作成者は、個々の致命的なエラーに対して特殊なアクションをとる(すべてのエラーを単一の報告にまとめるなど)必要がある場合、サブクラス内のこのメソッドをオーバーライドできます。このメソッドが呼び出されると、文書の信頼性が低くなり、パーサーも構文解析イベントを報告しなくなるので、アプリケーションの通常処理はすべて終了される必要があります。
- 定義:
fatalError
、インタフェース:ErrorHandler
- パラメータ:
e
- 例外としてエンコードされたエラー情報。- 例外:
SAXException
- 任意のSAX例外。ほかの例外をラップしている可能性があります。- 関連項目:
ErrorHandler.fatalError(org.xml.sax.SAXParseException)
,SAXParseException
-
-