|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
public interface ErrorHandler
SAX エラーハンドラの基本インタフェースです。
このモジュールは、ソースコード、文書ともに公開ドメインに置かれています。したがって、内容に関する保証は一切提供されません。詳細については、http://www.saxproject.org を参照してください。
カスタムエラー処理を実装する必要がある場合、SAX アプリケーションはこのインタフェースを実装し、setErrorHandler
メソッドを使用して XML リーダーにインスタンスを登録する必要があります。これで、パーサーはこのインタフェースを介してすべてのエラーおよび警告を報告するようになります。
警告: アプリケーションが ErrorHandler を登録していない場合、「SAXParseException」が致命的なエラーとしてスローされる場合を除いて XML 構文解析エラーは報告されません。妥当性エラーを検出するには、error()
呼び出しを処理する ErrorHandler を登録する必要があります。
XML 処理エラーの場合、SAX ドライバは、例外がスローされる前にこのインタフェースを使用する必要があります。タイプの異なるエラーや警告の例外をスローするかどうかを決定するアプリケーションとそうでないアプリケーションがあります。ただし、fatalError
の呼び出し後に、パーサーが追加のエラーを報告し続けることはありません。つまり、fatalError の報告後は、SAX ドライバクラスが例外をスローすることがあります。また、パーサーは XML 以外のエラーに対して適切な例外をスローすることもあります。たとえば、XMLReader.parse()
は、エンティティーまたはドキュメントにアクセスするエラーに対して IOException をスローします。
XMLReader.setErrorHandler(org.xml.sax.ErrorHandler)
,
SAXParseException
メソッドの概要 | |
---|---|
void |
error(SAXParseException exception)
回復可能なエラーの通知を受け取ります。 |
void |
fatalError(SAXParseException exception)
回復できないエラーの通知を受け取ります。 |
void |
warning(SAXParseException exception)
警告の通知を受け取ります。 |
メソッドの詳細 |
---|
void warning(SAXParseException exception) throws SAXException
SAX パーサーはこのメソッドを使用して、XML 勧告に定義されたエラーまたは致命的なエラー以外の条件を報告します。デフォルトの動作では何も実行されません。
SAX パーサーは、このメソッドの呼び出し後も標準構文解析イベントを提供し続ける必要があります。これは、アプリケーションが文書処理を最後までできなければならないからです。
フィルタは、このメソッドを使用してその他の非 XML 警告も報告できます。
exception
- SAX 構文解析例外にカプセル化された
警告情報
SAXException
- SAX 例外。
ほかの例外をラップしている可能性があるSAXParseException
void error(SAXParseException exception) throws SAXException
これは、W3C XML 1.0 勧告セクション 1.2 の「エラー」の定義に相当します。たとえば、妥当性を検証するパーサーは、このコールバックを使用して妥当性制約違反を報告します。デフォルトの動作では何も実行されません。
SAX パーサーは、このメソッドの呼び出し後も標準構文解析イベントを提供し続ける必要があります。これは、アプリケーションが文書処理を最後までできなければならないからです。必須事項として XML 勧告に定義されているわけではありませんが、アプリケーションが文書処理を最後までできない場合、パーサーは致命的なエラーを報告します。
フィルタは、このメソッドを使用してその他の非 XML エラーも報告できます。
exception
- SAX 構文解析例外にカプセル化された
エラー情報
SAXException
- SAX 例外。
ほかの例外をラップしている可能性があるSAXParseException
void fatalError(SAXParseException exception) throws SAXException
このメソッドのマニュアルと ContentHandler.endDocument()
のマニュアルとの間には明らかに矛盾があります。クライアントは、今後のメジャーリリースでこのあいまいさが解決されないかぎり、パーサーが fatalError() を報告したり例外をスローしたときに endDocument() が呼び出されるかどうかを仮定しないようにする必要があります。
これは、W3C XML 1.0 勧告セクション 1.2 の「致命的なエラー」の定義に相当します。たとえば、パーサーは、このコールバックを使用して整形式制約違反を報告します。
パーサーがこのメソッドを呼び出したあと、アプリケーションは文書が使用できなくなったと判断し、その他のエラーメッセージを収集するだけの目的で処理を続行します。つまり、SAX パーサーは、このメソッドを呼び出したあと、その他のイベントの報告を停止してもかまいません。
exception
- SAX 構文解析例外にカプセル化された
エラー情報
SAXException
- SAX 例外。
ほかの例外をラップしている可能性があるSAXParseException
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。