Module  java.xml.bind
软件包  javax.xml.bind

Interface ValidationEventHandler

  • 所有已知实现类:
    DefaultValidationEventHandlerValidationEventCollector


    public interface ValidationEventHandler
    用于验证错误的基本事件处理程序接口。

    如果应用程序需要实现自定义的事件处理,它必须实现此接口,然后用要么注册它Unmarshaller ,该Validator ,或Marshaller 然后,JAXB提供程序将向这些事件处理程序报告解密,组织和验证操作期间遇到的验证错误和警告。

    如果handleEvent方法抛出未经检查的运行时异常,则JAXB提供者必须将该方法视为返回false,有效终止当前正在进行的任何操作(unmarshal,validate或marshal)。

    修改事件处理程序中的Java内容树不受规范的限制,并可能导致意外的行为。

    遇到致命错误后,未能从handleEvent方法返回的错误未经规范定义,可能会导致意外的行为。

    默认事件处理程序

    See: Validator javadocs
    从以下版本开始:
    1.6,JAXB 1.0
    另请参见:
    UnmarshallerValidatorMarshallerValidationEventValidationEventCollector
    • 方法详细信息

      • handleEvent

        boolean handleEvent​(ValidationEvent event)
        接收验证警告或错误的通知。 ValidationEvent将嵌入一个ValidationEventLocator ,指示发生错误或警告的位置。

        如果从该方法抛出未检查的运行时异常,则JAXB提供程序将将其视为返回false并中断当前解组,验证或组织操作。

        参数
        event - 封装的验证事件信息。 如果此参数为空,则为提供者错误。
        结果
        如果JAXB提供程序在处理此警告/错误后尝试继续执行当前解组,验证或组织操作,则为true,如果提供程序应使用适当的 UnmarshalExceptionMarshalException终止当前操作, ValidationException MarshalException
        异常
        IllegalArgumentException - 如果事件对象为空。