Class W3CDomHandler

java.lang.Object
jakarta.xml.bind.annotation.W3CDomHandler
All Implemented Interfaces:
DomHandler<Element,DOMResult>

public class W3CDomHandler extends Object implements DomHandler<Element,DOMResult>
DomHandler implementation for W3C DOM (org.w3c.dom package.)
Author:
Kohsuke Kawaguchi
  • Constructor Details

    • W3CDomHandler

      public W3CDomHandler()
      Default constructor.

      It is up to a Jakarta XML Binding provider to decide which DOM implementation to use or how that is configured.

    • W3CDomHandler

      public W3CDomHandler(DocumentBuilder builder)
      Constructor that allows applications to specify which DOM implementation to be used.
      Parameters:
      builder - must not be null. Jakarta XML Binding uses this DocumentBuilder to create a new element.
  • Method Details

    • getBuilder

      public DocumentBuilder getBuilder()
    • setBuilder

      public void setBuilder(DocumentBuilder builder)
    • createUnmarshaller

      public DOMResult createUnmarshaller(ValidationEventHandler errorHandler)
      Description copied from interface: DomHandler
      When a Jakarta XML Binding provider needs to unmarshal a part of a document into an infoset representation, it first calls this method to create a Result object.

      A Jakarta XML Binding provider will then send a portion of the XML into the given result. Such a portion always form a subtree of the whole XML document rooted at an element.

      Specified by:
      createUnmarshaller in interface DomHandler<Element,DOMResult>
      Parameters:
      errorHandler - if any error happens between the invocation of this method and the invocation of DomHandler.getElement(Result), they must be reported to this handler.

      The caller must provide a non-null error handler.

      The Result object created from this method may hold a reference to this error handler.

      Returns:
      null if the operation fails. The error must have been reported to the error handler.
    • getElement

      public Element getElement(DOMResult r)
      Description copied from interface: DomHandler
      Once the portion is sent to the Result. This method is called by a Jakarta XML Binding provider to obtain the unmarshalled element representation.

      Multiple invocations of this method may return different objects. This method can be invoked only when the whole subtree are fed to the Result object.

      Specified by:
      getElement in interface DomHandler<Element,DOMResult>
      Parameters:
      r - The Result object created by DomHandler.createUnmarshaller(ValidationEventHandler).
      Returns:
      null if the operation fails. The error must have been reported to the error handler.
    • marshal

      public Source marshal(Element element, ValidationEventHandler errorHandler)
      Description copied from interface: DomHandler
      This method is called when a Jakarta XML Binding provider needs to marshal an element to XML.

      If non-null, the returned Source must contain a whole document rooted at one element, which will then be woven into a bigger document that the Jakarta XML Binding provider is marshalling.

      Specified by:
      marshal in interface DomHandler<Element,DOMResult>
      Parameters:
      errorHandler - Receives any errors happened during the process of converting an element into a Source.

      The caller must provide a non-null error handler.

      Returns:
      null if there was an error. The error should have been reported to the handler.