org.apache.xml.serializer
Interface DOM3Serializer
- DOM3SerializerImpl
public interface DOM3Serializer
This interface is not intended to be used
by an end user, but rather by an XML parser that is implementing the DOM
Level 3 Load and Save APIs.
See the DOM Level 3 Load and Save interface at
LSSeializer.
For a list of configuration parameters for DOM Level 3 see
DOMConfiguration.
For additional configuration parameters available with the DOM Level 3 Load and Save API LSSerializer see
LSerializer config.
The following example uses a DOM3Serializer indirectly, through an an XML
parser that uses this class as part of its implementation of the DOM Level 3
Load and Save APIs, and is the prefered way to serialize with DOM Level 3 APIs.
Example:
public class TestDOM3 {
public static void main(String args[]) throws Exception {
// Get document to serialize
TestDOM3 test = new TestDOM3();
// Serialize using standard DOM Level 3 Load/Save APIs
System.out.println(test.testDOM3LS());
}
public org.w3c.dom.Document getDocument() throws Exception {
// Create a simple DOM Document.
javax.xml.parsers.DocumentBuilderFactory factory =
javax.xml.parsers.DocumentBuilderFactory.newInstance();
javax.xml.parsers.DocumentBuilder builder = factory.newDocumentBuilder();
byte[] bytes = "".getBytes();
java.io.InputStream is = new java.io.ByteArrayInputStream(bytes);
org.w3c.dom.Document doc = builder.parse(is);
return doc;
}
//
// This method uses standard DOM Level 3 Load Save APIs:
// org.w3c.dom.bootstrap.DOMImplementationRegistry
// org.w3c.dom.ls.DOMImplementationLS
// org.w3c.dom.ls.DOMImplementationLS
// org.w3c.dom.ls.LSSerializer
// org.w3c.dom.DOMConfiguration
//
// The only thing non-standard in this method is the value set for the
// name of the class implementing the DOM Level 3 Load Save APIs,
// which in this case is:
// org.apache.xerces.dom.DOMImplementationSourceImpl
//
public String testDOM3LS() throws Exception {
// Get a simple DOM Document that will be serialized.
org.w3c.dom.Document docToSerialize = getDocument();
// Get a factory (DOMImplementationLS) for creating a Load and Save object.
org.w3c.dom.ls.DOMImplementationLS impl =
(org.w3c.dom.ls.DOMImplementationLS)
org.w3c.dom.bootstrap.DOMImplementationRegistry.newInstance().getDOMImplementation("LS");
// Use the factory to create an object (LSSerializer) used to
// write out or save the document.
org.w3c.dom.ls.LSSerializer writer = impl.createLSSerializer();
org.w3c.dom.DOMConfiguration config = writer.getDomConfig();
config.setParameter("format-pretty-print", Boolean.TRUE);
// Use the LSSerializer to write out or serialize the document to a String.
String serializedXML = writer.writeToString(docToSerialize);
return serializedXML;
}
} // end of class TestDOM3
DOMErrorHandler | getErrorHandler() - Returns a DOMErrorHandler set on the DOM Level 3 Serializer.
|
LSSerializerFilter | getNodeFilter() - Returns a LSSerializerFilter set on the DOM Level 3 Serializer to filter nodes
during serialization.
|
void | serializeDOM3(Node node) - Serializes the Level 3 DOM node.
|
void | setErrorHandler(DOMErrorHandler handler) - Sets a DOMErrorHandler on the DOM Level 3 Serializer.
|
void | setNewLine(char[] newLine) - Sets the end-of-line sequence of characters to be used during serialization
|
void | setNodeFilter(LSSerializerFilter filter) - Sets a LSSerializerFilter on the DOM Level 3 Serializer to filter nodes
during serialization.
|
getErrorHandler
public DOMErrorHandler getErrorHandler()
Returns a DOMErrorHandler set on the DOM Level 3 Serializer.
This interface is a public API.
- A Level 3 DOMErrorHandler
getNodeFilter
public LSSerializerFilter getNodeFilter()
Returns a LSSerializerFilter set on the DOM Level 3 Serializer to filter nodes
during serialization.
This interface is a public API.
- The Level 3 LSSerializerFilter
serializeDOM3
public void serializeDOM3(Node node)
throws IOException
Serializes the Level 3 DOM node. Throws an exception only if an I/O
exception occured while serializing.
This interface is a public API.
node
- the Level 3 DOM node to serialize
setErrorHandler
public void setErrorHandler(DOMErrorHandler handler)
Sets a DOMErrorHandler on the DOM Level 3 Serializer.
This interface is a public API.
handler
- the Level 3 DOMErrorHandler
setNewLine
public void setNewLine(char[] newLine)
Sets the end-of-line sequence of characters to be used during serialization
newLine
- The end-of-line sequence of characters to be used during serialization
setNodeFilter
public void setNodeFilter(LSSerializerFilter filter)
Sets a LSSerializerFilter on the DOM Level 3 Serializer to filter nodes
during serialization.
This interface is a public API.
filter
- the Level 3 LSSerializerFilter
Copyright © 2006 Apache XML Project. All Rights Reserved.