Deprecated
This class was deprecated in Xerces 2.9.0. It is recommended that new applications use the DOM Level 3 LSSerializer or JAXP's Transformation API for XML (TrAX) for serializing XML. See the Xerces documentation for more information.
Serializer.
If an output stream is used, the encoding is taken from the output format (defaults to UTF-8). If a writer is used, make sure the writer uses the same encoding (if applies) as specified in the output format.
The serializer supports both DOM and SAX. SAX serializing is done by firing
SAX events and using the serializer as a document handler. DOM serializing is done
by calling serialize(Document) or by using DOM Level 3
org. and
serializing with org.,
org..
If an I/O exception occurs while serializing, the serializer
will not throw an exception directly, but only throw it
at the end of serializing (either DOM or SAX's org..
For elements that are not specified as whitespace preserving, the serializer will potentially break long text lines at space boundaries, indent lines, and serialize elements on separate lines. Line terminators will be regarded as spaces, and spaces at beginning of line will be stripped.
Serializer
| Modifier and Type | Field and Description |
|---|---|
| protected static final boolean | |
| protected NamespaceSupport | fLocalNSBinder
stores all namespace bindings on the current element |
| protected boolean | fNamespacePrefixes
Controls whether namespace prefixes will be printed out during serialization |
| protected boolean | fNamespaces
Controls whether namespace fixup should be performed during the serialization. |
| protected NamespaceSupport | fNSBinder
stores namespaces in scope |
| private boolean | |
| protected SymbolTable | fSymbolTable
symbol table for serialization |
| protected static final String |
| Access | Constructor and Description |
|---|---|
| public | |
| public | XMLSerializer(OutputFormat format)
Deprecated
as a consequence of
Constructs a new serializer.
OutputFormat being deprecated.
|
| public | XMLSerializer(Writer
The writer to use writer, OutputFormat The output format to use, null for the default format)
Deprecated
as a consequence of
Constructs a new serializer that writes to the specified writer
using the specified output format.
OutputFormat being deprecated.
|
| public | XMLSerializer(OutputStream
The output stream to use output, OutputFormat The output format to use, null for the default format)
Deprecated
as a consequence of
Constructs a new serializer that writes to the specified output
stream using the specified output format.
OutputFormat being deprecated.
|
| Modifier and Type | Method and Description |
|---|---|
| protected void | checkUnboundNamespacePrefixedNode(Node
The node to check for unbound namespace prefices node)Overrides org. |
| public void | endElement(String
the Namespace URI, or the empty string if the
element has no Namespace URI or if Namespace
processing is not being performed namespaceURI, String the local name (without prefix), or the
empty string if Namespace processing is not being
performed localName, String the qualified XML name (with prefix), or the
empty string if qualified names are not available rawName)Implements org. |
| public void | endElement(String
The element type name tagName)Implements org. |
| public void | |
| private Attributes | extractNamespaces(Attributes attrs)
Retrieve and remove the namespaces declarations from the list of attributes. |
| protected String | getEntityRef(int
Character value ch)Implements abstract org. |
| private void | |
| protected void | printEscaped(String
The string to escape source)Overrides org. |
| private void | printNamespaceAttr(String prefix, String uri)
Serializes a namespace attribute with the given prefix and value for URI. |
| protected void | printText(String text, boolean preserveSpace, boolean unescaped)
Overrides org. |
| protected void | printText(char[]
The text to print chars, int The start offset start, int The number of characters length, boolean Space preserving flag preserveSpace, boolean Print unescaped unescaped)Overrides org. |
| protected void | |
| public boolean | |
| protected void | serializeElement(Element
The element to serialize elem)Implements abstract org. |
| public void | setNamespaces(boolean namespaces)
This methods turns on namespace fixup algorithm during DOM serialization. |
| public void | setOutputFormat(OutputFormat
The output format to use format)Overrides org. Implements org.
Deprecated
as a consequence of
Specifies an output format for this serializer.
OutputFormat being deprecated.
|
| protected void | |
| public void | startElement(String
the Namespace URI, or the empty string if the
element has no Namespace URI or if Namespace
processing is not being performed namespaceURI, String the local name (without prefix), or the
empty string if Namespace processing is not being
performed localName, String the qualified name (with prefix), or the
empty string if qualified names are not available rawName, Attributes the attributes attached to the element. If
there are no attributes, it shall be an empty
Attributes object. The value of this object after
startElement returns is undefined attrs)Implements org. |
| public void | startElement(String
The element type name. tagName, AttributeList The attributes attached to the element, if any. attrs)Implements org.
Deprecated
as a consequence of
Receive notification of the beginning of an element.
AttributeList being deprecated.
|
| DEBUG | back to summary |
|---|---|
| protected static final boolean DEBUG | |
| fLocalNSBinder | back to summary |
|---|---|
| protected NamespaceSupport fLocalNSBinder stores all namespace bindings on the current element | |
| fNamespacePrefixes | back to summary |
|---|---|
| protected boolean fNamespacePrefixes Controls whether namespace prefixes will be printed out during serialization | |
| fNamespaces | back to summary |
|---|---|
| protected boolean fNamespaces Controls whether namespace fixup should be performed during the serialization. Note if this field is set to true the following fields need to be initialized: fNSBinder, fLocalNSBinder, fSymbolTable, XMLSymbols.EMPTY_STRING, fXmlSymbol, fXmlnsSymbol | |
| fNSBinder | back to summary |
|---|---|
| protected NamespaceSupport fNSBinder stores namespaces in scope | |
| fPreserveSpace | back to summary |
|---|---|
| private boolean fPreserveSpace | |
| fSymbolTable | back to summary |
|---|---|
| protected SymbolTable fSymbolTable symbol table for serialization | |
| PREFIX | back to summary |
|---|---|
| protected static final String PREFIX | |
| XMLSerializer | back to summary |
|---|---|
| public XMLSerializer() Constructs a new serializer. The serializer cannot be used without
calling | |
| XMLSerializer | back to summary |
|---|---|
| public XMLSerializer(OutputFormat format)
Deprecated as a consequence of Constructs a new serializer. The serializer cannot be used without
calling | |
| XMLSerializer | back to summary |
|---|---|
| public XMLSerializer(Writer writer, OutputFormat format)
Deprecated as a consequence of Constructs a new serializer that writes to the specified writer using the specified output format. If format is null, will use a default output format.
| |
| XMLSerializer | back to summary |
|---|---|
| public XMLSerializer(OutputStream output, OutputFormat format)
Deprecated as a consequence of Constructs a new serializer that writes to the specified output stream using the specified output format. If format is null, will use a default output format.
| |
| checkUnboundNamespacePrefixedNode | back to summary |
|---|---|
| protected void checkUnboundNamespacePrefixedNode(Node node) throws IOException Overrides org. DOM Level 3: Check a node to determine if it contains unbound namespace prefixes.
| |
| endElement | back to summary |
|---|---|
| public void endElement(String namespaceURI, String localName, String rawName) throws SAXException Implements org. Doc from org. Receive notification of the end of an element. The SAX parser will invoke this method at the end of every
element in the XML document; there will be a corresponding
For information on the names, see startElement.
| |
| endElement | back to summary |
|---|---|
| public void endElement(String tagName) throws SAXException Implements org. Doc from org. Receive notification of the end of an element. The SAX parser will invoke this method at the end of every element in the XML document; there will be a corresponding startElement() event for every endElement() event (even when the element is empty). If the element name has a namespace prefix, the prefix will still be attached to the name.
| |
| endElementIO | back to summary |
|---|---|
| public void endElementIO(String namespaceURI, String localName, String rawName) throws IOException | |
| extractNamespaces | back to summary |
|---|---|
| private Attributes extractNamespaces(Attributes attrs) throws SAXException Retrieve and remove the namespaces declarations from the list of attributes. | |
| getEntityRef | back to summary |
|---|---|
| protected String getEntityRef(int ch) Implements abstract org. Doc from org. Returns the suitable entity reference for this character value, or null if no such entity exists. Calling this method with '&' will return "&".
| |
| printAttribute | back to summary |
|---|---|
| private void printAttribute(String name, String value, boolean isSpecified, Attr attr) throws IOException Prints attribute. Note xml:space attribute modifies output format | |
| printEscaped | back to summary |
|---|---|
| protected void printEscaped(String source) throws IOException Overrides org. Doc from org. Escapes a string so it may be printed as text content or attribute value. Non printable characters are escaped using character references. Where the format specifies a deault entity reference, that reference is used (e.g. <).
| |
| printNamespaceAttr | back to summary |
|---|---|
| private void printNamespaceAttr(String prefix, String uri) throws IOException Serializes a namespace attribute with the given prefix and value for URI. In case prefix is empty will serialize default namespace declaration. | |
| printText | back to summary |
|---|---|
| protected void printText(String text, boolean preserveSpace, boolean unescaped) throws IOException Overrides org. | |
| printText | back to summary |
|---|---|
| protected void printText(char[] chars, int start, int length, boolean preserveSpace, boolean unescaped) throws IOException Overrides org. Doc from org. Called to print additional text with whitespace handling.
If spaces are preserved, the text is printed as if by calling
| |
| printXMLChar | back to summary |
|---|---|
| protected void printXMLChar(int ch) throws IOException print text data | |
| reset | back to summary |
|---|---|
| public boolean reset() Overrides org. | |
| serializeElement | back to summary |
|---|---|
| protected void serializeElement(Element elem) throws IOException Implements abstract org. Called to serialize a DOM element. Equivalent to calling
| |
| setNamespaces | back to summary |
|---|---|
| public void setNamespaces(boolean namespaces) This methods turns on namespace fixup algorithm during DOM serialization.
| |
| setOutputFormat | back to summary |
|---|---|
| public void setOutputFormat(OutputFormat format) Overrides org. Implements org. Doc from org. Deprecated as a consequence of Specifies an output format for this serializer. It the serializer has already been associated with an output format, it will switch to the new format. This method should not be called while the serializer is in the process of serializing a document.
| |
| startDocument | back to summary |
|---|---|
| protected void startDocument(String rootTagName) throws IOException Called to serialize the document's DOCTYPE by the root element. The document type declaration must name the root element, but the root element is only known when that element is serialized, and not at the start of the document.
This method will check if it has not been called before ( | |
| startElement | back to summary |
|---|---|
| public void startElement(String namespaceURI, String localName, String rawName, Attributes attrs) throws SAXException Implements org. Doc from org. Receive notification of the beginning of an element. The Parser will invoke this method at the beginning of every
element in the XML document; there will be a corresponding
This event allows up to three name components for each element:
Any or all of these may be provided, depending on the values of the http://xml.org/sax/features/namespaces and the http://xml.org/sax/features/namespace-prefixes properties:
Note that the attribute list provided will contain only
attributes with explicit values (specified or defaulted):
#IMPLIED attributes will be omitted. The attribute list
will contain attributes used for Namespace declarations
(xmlns* attributes) only if the
Like
| |
| startElement | back to summary |
|---|---|
| public void startElement(String tagName, AttributeList attrs) throws SAXException Implements org. Doc from org. Deprecated as a consequence of Receive notification of the beginning of an element. The Parser will invoke this method at the beginning of every element in the XML document; there will be a corresponding endElement() event for every startElement() event (even when the element is empty). All of the element's content will be reported, in order, before the corresponding endElement() event. If the element name has a namespace prefix, the prefix will still be attached. Note that the attribute list provided will contain only attributes with explicit values (specified or defaulted): #IMPLIED attributes will be omitted.
| |