java.lang.Object
org.eclipse.persistence.oxm.XMLBinder

public class XMLBinder extends Object
PUBLIC:

Purpose:Provide a runtime public interface for preserving unmapped content from an XML Document.

Responsibilities:

  • Unmarshal XML into JavaObjects and maintain the associations between nodes and objects
  • Update the cached XML based on changes to the object
  • Update the cached objects based on changes to the XML Document
  • Provide API to access the cached Node for a given object
  • Provide API to access the cached Object for a given XML Node

The XML Binder is a runtime class that allows an association to be maintained between the original XML Document and the Java Objects built from the Document. It allows unmapped content (such as comments, processing instructions or other unmapped elements and attributes) to be preserved. The XMLBinder is created through an XMLContext.

See Also:
  • Constructor Details

  • Method Details

    • unmarshal

      public Object unmarshal(Node node)
      This method will unmarshal the provided node into mapped java objects. The original node will be cached rather than thrown away.
      Returns:
      The root object unmarshalled from the provided node.
    • unmarshal

      public XMLRoot unmarshal(Node node, Class<?> javaClass)
    • updateXML

      public void updateXML(Object obj)
      This method will update the cached XML node for the provided object. If no node exists for this object, then no operation is performed.
    • marshal

      public void marshal(Object obj, Node node)
    • updateXML

      public void updateXML(Object obj, Node associatedNode)
    • getXMLNode

      public Node getXMLNode(Object object)
      Gets the XML Node associated with the provided object.
      Returns:
      an XML Node used to construct the given object. Null if no node exists for this object.
    • getObject

      public Object getObject(Node node)
      Gets the Java Object associated with the provided XML Node.
      Returns:
      the Java Object associated with this node. If no object is associated then returns null
    • updateObject

      public void updateObject(Node node)
      Updates the object associated with the provided node to reflect any changed made to that node. If this Binder has no object associated with the given node, then no operation is performed.
    • getDocumentPreservationPolicy

      public DocumentPreservationPolicy getDocumentPreservationPolicy()
      Gets this XMLBinder's document preservation policy.
      Returns:
      an instance of DocumentPreservationPolicy
      See Also:
    • getMarshaller

      public XMLMarshaller getMarshaller()
    • setMarshaller

      public void setMarshaller(XMLMarshaller marshaller)
    • setSchema

      public void setSchema(Schema aSchema)
    • getSchema

      public Schema getSchema()
    • setErrorHandler

      public void setErrorHandler(ErrorHandler errorHandler)
    • getErrorHandler

      public ErrorHandler getErrorHandler()