public interface ValidationEventHandler アプリケーションがカスタマイズされたイベント処理を実装する必要がある場合は、このインターフェースを実装してから、Unmarshaller、Validator、Marshaller のいずれかに登録する必要があります。Jakarta XML Binding Provider は、アンマーシャル、マーシャル、検証操作中に発生した検証エラーと警告をこれらのイベントハンドラーに報告します。
handleEvent メソッドが未チェックのランタイム例外をスローした場合、Jakarta XML Binding Provider は、メソッドが false を返したかのようにそれを処理し、その時点で進行中の操作(アンマーシャル、検証、マーシャル)を効果的に終了する必要があります。
イベントハンドラー内で Java コンテンツツリーを変更することは仕様によって定義されておらず、予期しない動作が発生する可能性があります。
致命的なエラーが発生した後に handleEvent メソッドから false を返さないことは、仕様では定義されておらず、予期しない動作が発生する可能性があります。
デフォルトのイベントハンドラー
参照先: バリデーター javadoc
Unmarshaller, Validator, Marshaller, ValidationEvent, ValidationEventCollector| 修飾子と型 | メソッドと説明 |
|---|---|
boolean | handleEvent(ValidationEvent event) 検証の警告またはエラーの通知を受け取ります。 |
boolean handleEvent(ValidationEvent event)
ValidationEventLocator が埋め込まれます。このメソッドから未チェックのランタイム例外がスローされた場合、Jakarta XML Binding プロバイダーは、メソッドが false を返したかのようにそれを処理し、現在のアンマーシャル、検証、マーシャル操作を中断します。
event - カプセル化された検証イベント情報。このパラメーターが null の場合、プロバイダーエラーです。UnmarshalException、ValidationException、MarshalException で現在の操作を終了する必要がある場合は false。IllegalArgumentExceptionSE - イベントオブジェクトが null の場合。Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.