Class DOMOutputter

java.lang.Object
org.jdom2.output.DOMOutputter

public class DOMOutputter extends Object
Outputs a JDOM org.jdom2.Document as a DOM org.w3c.dom.Document. Also provides methods to output other types of JDOM Content in the equivalent DOM nodes.

There are two versions of most functions, one that creates an independent DOM node using the DOMAdapter to create a new org.w3c.dom.Document. The other version creates the new DOM Nodes using the supplied org.w3c.dom.Document instance.

Author:
Brett McLaughlin, Jason Hunter, Matthew Merlo, Dan Schaffer, Yusuf Goolamabbas, Bradley S. Huffman, Rolf lear
  • Constructor Details

    • DOMOutputter

      public DOMOutputter()
      This creates a new DOMOutputter which will attempt to first locate a DOM implementation to use via JAXP, and if JAXP does not exist or there's a problem, will fall back to the default parser.
    • DOMOutputter

      public DOMOutputter(DOMOutputProcessor processor)
      This creates a new DOMOutputter which uses the default (JAXP) DOM implementation but with a custom processor.
      Parameters:
      processor - the custom processor to use.
      Since:
      JDOM2
    • DOMOutputter

      public DOMOutputter(DOMAdapter adapter, Format format, DOMOutputProcessor processor)
      The complete constructor for specifying a custom DOMAdaptor, Format, and DOMOutputProcessor.
      Parameters:
      adapter - The adapter to use to create the base Document instance (null implies the default).
      format - The output Format to use (null implies the default).
      processor - The custom mechanism for doing the output (null implies the default).
      Since:
      JDOM2
    • DOMOutputter

      @Deprecated public DOMOutputter(String adapterClass)
      Deprecated.
      This creates a new DOMOutputter using the specified DOMAdapter implementation as a way to choose the underlying parser.
      Parameters:
      adapterClass - String name of class to use for DOM output
      Throws:
      IllegalArgumentException - if the adapter could not be instantiated. (it should be JDOMException, but that would require a change to this deprecated method's signature...
    • DOMOutputter

      public DOMOutputter(DOMAdapter adapter)
      This creates a new DOMOutputter using the specified DOMAdapter implementation as a way to choose the underlying parser.

      If the specified adapter is not thread-safe then the user should ensure that the adapter instance is never shared between multiple DOMOutputters. The default DOMAdapter JAXPDOMAdapter is thread-safe.

      Parameters:
      adapter - the DOMAdapter instance to use for creating the base org.w3c.dom.Document Specify the null value to get the default adapter.
      Since:
      JDOM2
  • Method Details

    • getDOMAdapter

      public DOMAdapter getDOMAdapter()
      Get the DOMAdapter currently set for this DOMOutputter.
      Returns:
      the current DOMAdapter.
      Since:
      JDOM2
    • setDOMAdapter

      public void setDOMAdapter(DOMAdapter adapter)
      Set the DOMAdapter currently set for this DOMOutputter.
      Parameters:
      adapter - the new DOMAdapter to use (null implies the default).
      Since:
      JDOM2
    • getFormat

      public Format getFormat()
      Get the Format instance currently used by this DOMOutputter.
      Returns:
      the current Format instance
      Since:
      JDOM2
    • setFormat

      public void setFormat(Format format)
      Set a new Format instance for this DOMOutputter
      Parameters:
      format - the new Format instance to use (null implies the default)
      Since:
      JDOM2
    • getDOMOutputProcessor

      public DOMOutputProcessor getDOMOutputProcessor()
      Get the current DOMOutputProcessor
      Returns:
      the current DOMOutputProcessor
      Since:
      JDOM2
    • setDOMOutputProcessor

      public void setDOMOutputProcessor(DOMOutputProcessor processor)
      Set a new DOMOutputProcessor for this DOMOutputter.
      Parameters:
      processor - the new processor to set (null implies the default)
      Since:
      JDOM2
    • setForceNamespaceAware

      @Deprecated public void setForceNamespaceAware(boolean flag)
      Deprecated.
      All DOMOutputters are now always NamespaceAware.
      Controls how NO_NAMESPACE nodes are handled. If true the outputter always creates a namespace aware DOM.
      Parameters:
      flag - true to force NamespaceAware
    • getForceNamespaceAware

      @Deprecated public boolean getForceNamespaceAware()
      Deprecated.
      All DOMOutputters are always NamesapceAware. Always true.
      Returns whether DOMs will be constructed with namespaces even when the source document has elements all in the empty namespace.
      Returns:
      the forceNamespaceAware flag value
    • output

      public Document output(Document document) throws JDOMException
      This converts the JDOM Document parameter to a DOM Document, returning the DOM version. The DOM implementation is the one supplied by the current DOMAdapter.
      Parameters:
      document - Document to output.
      Returns:
      an org.w3c.dom.Document version
      Throws:
      JDOMException - if output failed.
    • output

      public DocumentType output(DocType doctype) throws JDOMException
      This converts the JDOM DocType parameter to a DOM DocumentType, returning the DOM version. The DOM implementation is the one supplied by the current DOMAdapter.

      Unlike the other DOM Nodes, you cannot use a DOM Document to simply create a DOM DocumentType Node, it has to be created at the same time as the DOM Document instance. As a result, there is no version of this method that takes a DOM Document instance.

      Parameters:
      doctype - DocType to output.
      Returns:
      an org.w3c.dom.DocumentType version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      public Element output(Element element) throws JDOMException
      This converts the JDOM Element parameter to a DOM Element, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      element - Element to output.
      Returns:
      an org.w3c.dom.Element version
      Throws:
      JDOMException - if output failed.
    • output

      public Text output(Text text) throws JDOMException
      This converts the JDOM Text parameter to a DOM Text Node, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      text - Text to output.
      Returns:
      an org.w3c.dom.Text version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      public CDATASection output(CDATA cdata) throws JDOMException
      This converts the JDOM CDATA parameter to a DOM CDATASection Node, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      cdata - CDATA to output.
      Returns:
      an org.w3c.dom.CDATASection version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      This converts the JDOM ProcessingInstruction parameter to a DOM ProcessingInstruction, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      pi - ProcessingInstruction to output.
      Returns:
      an org.w3c.dom.Element version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      public Comment output(Comment comment) throws JDOMException
      This converts the JDOM ProcessingInstruction parameter to a DOM ProcessingInstruction, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      comment - Comment to output.
      Returns:
      an org.w3c.dom.Comment version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      public EntityReference output(EntityRef entity) throws JDOMException
      This converts the JDOM EntityRef parameter to a DOM EntityReference Node, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      entity - EntityRef to output.
      Returns:
      an org.w3c.dom.EntityReference version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      public Attr output(Attribute attribute) throws JDOMException
      This converts the JDOM Attribute parameter to a DOM Attr Node, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      attribute - Attribute to output.
      Returns:
      an org.w3c.dom.Attr version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      public List<Node> output(List<? extends Content> list) throws JDOMException
      This converts the JDOM Attribute parameter to a DOM Attr Node, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      list - Attribute to output.
      Returns:
      an org.w3c.dom.Attr version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      public Element output(Document basedoc, Element element) throws JDOMException
      This converts the JDOM Element parameter to a DOM Element, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      basedoc - The DOM Document to use for creating DOM Nodes.
      element - Element to output.
      Returns:
      an org.w3c.dom.Element version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      public Text output(Document basedoc, Text text) throws JDOMException
      This converts the JDOM Text parameter to a DOM Text Node, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      basedoc - The DOM Document to use for creating DOM Nodes.
      text - Text to output.
      Returns:
      an org.w3c.dom.Text version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      public CDATASection output(Document basedoc, CDATA cdata) throws JDOMException
      This converts the JDOM CDATA parameter to a DOM CDATASection Node, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      basedoc - The DOM Document to use for creating DOM Nodes.
      cdata - CDATA to output.
      Returns:
      an org.w3c.dom.CDATASection version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      This converts the JDOM ProcessingInstruction parameter to a DOM ProcessingInstruction, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      basedoc - The DOM Document to use for creating DOM Nodes.
      pi - ProcessingInstruction to output.
      Returns:
      an org.w3c.dom.Element version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      public Comment output(Document basedoc, Comment comment) throws JDOMException
      This converts the JDOM ProcessingInstruction parameter to a DOM ProcessingInstruction, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      basedoc - The DOM Document to use for creating DOM Nodes.
      comment - Comment to output.
      Returns:
      an org.w3c.dom.Comment version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      public EntityReference output(Document basedoc, EntityRef entity) throws JDOMException
      This converts the JDOM EntityRef parameter to a DOM EntityReference Node, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      basedoc - The DOM Document to use for creating DOM Nodes.
      entity - EntityRef to output.
      Returns:
      an org.w3c.dom.EntityReference version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      public Attr output(Document basedoc, Attribute attribute) throws JDOMException
      This converts the JDOM Attribute parameter to a DOM Attr Node, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      basedoc - The DOM Document to use for creating DOM Nodes.
      attribute - Attribute to output.
      Returns:
      an org.w3c.dom.Attr version
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2
    • output

      public List<Node> output(Document basedoc, List<? extends Content> list) throws JDOMException
      This converts the list of JDOM Content in to a list of DOM Nodes, returning the DOM version. The DOM Node will be linked to an independent DOM Document instance supplied by the current DOMAdapter
      Parameters:
      basedoc - The DOM Document to use for creating DOM Nodes.
      list - of JDOM Content to output.
      Returns:
      a List of org.w3c.dom.Node
      Throws:
      JDOMException - if output failed.
      Since:
      JDOM2