Package groovy.xml
Class XmlUtil
java.lang.Object
groovy.xml.XmlUtil
Used for pretty printing XML content and other XML related utilities.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic String
Escape control characters (below 0x20) with their XML entities, e.g.static String
Escape the following characters" ' & < >
with their XML entities, e.g.static SAXParser
newSAXParser
(String schemaLanguage, boolean namespaceAware, boolean validating, boolean allowDoctypeDecl, Source... schemas) Factory method to create a SAXParser configured to validate according to a particular schema language and optionally providing the schema sources to validate with.static SAXParser
newSAXParser
(String schemaLanguage, boolean namespaceAware, boolean validating, File schema) Factory method to create a SAXParser configured to validate according to a particular schema language and a File containing the schema to validate against.static SAXParser
newSAXParser
(String schemaLanguage, boolean namespaceAware, boolean validating, URL schema) Factory method to create a SAXParser configured to validate according to a particular schema language and a URL pointing to the schema to validate against.static SAXParser
newSAXParser
(String schemaLanguage, boolean namespaceAware, boolean validating, Source... schemas) Factory method to create a SAXParser configured to validate according to a particular schema language and optionally providing the schema sources to validate with.static SAXParser
newSAXParser
(String schemaLanguage, File schema) Factory method to create a SAXParser configured to validate according to a particular schema language and a File containing the schema to validate against.static SAXParser
newSAXParser
(String schemaLanguage, URL schema) Factory method to create a SAXParser configured to validate according to a particular schema language and a URL pointing to the schema to validate against.static SAXParser
newSAXParser
(String schemaLanguage, Source... schemas) Factory method to create a SAXParser configured to validate according to a particular schema language and optionally providing the schema sources to validate with.static String
Return a pretty String version of the XML content produced by the Writable.static void
serialize
(Writable writable, OutputStream os) Write a pretty version of the XML content produced by the Writable to the OutputStream.static void
Write a pretty version of the XML content produced by the Writable to the Writer.static String
Return a pretty String version of the Node.static void
serialize
(Node node, OutputStream os) Write a pretty version of the Node to the OutputStream.static void
Write a pretty version of the Node to the Writer.static String
serialize
(GPathResult node) Return a pretty version of the GPathResult.static void
serialize
(GPathResult node, OutputStream os) Write a pretty version of the GPathResult to the OutputStream.static void
serialize
(GPathResult node, Writer w) Write a pretty version of the GPathResult to the Writer.static String
Return a pretty version of the XML content contained in the given String.static String
Return a pretty version of the XML content contained in the given String.static void
serialize
(String xmlString, OutputStream os) Write a pretty version of the given XML string to the OutputStream.static void
serialize
(String xmlString, OutputStream os, boolean allowDocTypeDeclaration) Write a pretty version of the given XML string to the OutputStream.static void
Write a pretty version of the given XML string to the Writer.static void
Write a pretty version of the given XML string to the Writer.static String
Return a pretty String version of the Element.static String
Return a pretty String version of the Element.static void
serialize
(Element element, OutputStream os) Write a pretty version of the Element to the OutputStream.static void
serialize
(Element element, OutputStream os, boolean allowDocTypeDeclaration) Write a pretty version of the Element to the OutputStream.static void
Write a pretty version of the Element to the Writer.static void
Write a pretty version of the Element to the Writer.static void
setFeatureQuietly
(DocumentBuilderFactory factory, String feature, boolean value) static void
setFeatureQuietly
(SAXParserFactory factory, String feature, boolean value) static void
setFeatureQuietly
(TransformerFactory factory, String feature, boolean value)
-
Constructor Details
-
XmlUtil
public XmlUtil()
-
-
Method Details
-
serialize
Return a pretty String version of the Element.- Parameters:
element
- the Element to serialize- Returns:
- the pretty String representation of the Element
-
serialize
Return a pretty String version of the Element.- Parameters:
element
- the Element to serializeallowDocTypeDeclaration
- whether to allow doctype processing- Returns:
- the pretty String representation of the Element
-
serialize
Write a pretty version of the Element to the OutputStream.- Parameters:
element
- the Element to serializeos
- the OutputStream to write to
-
serialize
Write a pretty version of the Element to the OutputStream.- Parameters:
element
- the Element to serializeos
- the OutputStream to write toallowDocTypeDeclaration
- whether to allow doctype processing
-
serialize
Write a pretty version of the Element to the Writer.- Parameters:
element
- the Element to serializew
- the Writer to write to
-
serialize
Write a pretty version of the Element to the Writer.- Parameters:
element
- the Element to serializew
- the Writer to write toallowDocTypeDeclaration
- whether to allow doctype processing
-
serialize
Return a pretty String version of the Node.- Parameters:
node
- the Node to serialize- Returns:
- the pretty String representation of the Node
-
serialize
Write a pretty version of the Node to the OutputStream.- Parameters:
node
- the Node to serializeos
- the OutputStream to write to
-
serialize
Write a pretty version of the Node to the Writer.- Parameters:
node
- the Node to serializew
- the Writer to write to
-
serialize
Return a pretty version of the GPathResult.- Parameters:
node
- a GPathResult to serialize to a String- Returns:
- the pretty String representation of the GPathResult
-
serialize
Write a pretty version of the GPathResult to the OutputStream.- Parameters:
node
- a GPathResult to serializeos
- the OutputStream to write to
-
serialize
Write a pretty version of the GPathResult to the Writer.- Parameters:
node
- a GPathResult to serializew
- the Writer to write to
-
serialize
Return a pretty String version of the XML content produced by the Writable.- Parameters:
writable
- the Writable to serialize- Returns:
- the pretty String representation of the content from the Writable
-
serialize
Write a pretty version of the XML content produced by the Writable to the OutputStream.- Parameters:
writable
- the Writable to serializeos
- the OutputStream to write to
-
serialize
Write a pretty version of the XML content produced by the Writable to the Writer.- Parameters:
writable
- the Writable to serializew
- the Writer to write to
-
serialize
Return a pretty version of the XML content contained in the given String.- Parameters:
xmlString
- the String to serialize- Returns:
- the pretty String representation of the original content
-
serialize
Return a pretty version of the XML content contained in the given String.- Parameters:
xmlString
- the String to serializeallowDocTypeDeclaration
- whether to allow doctype processing- Returns:
- the pretty String representation of the original content
-
serialize
Write a pretty version of the given XML string to the OutputStream.- Parameters:
xmlString
- the String to serializeos
- the OutputStream to write to
-
serialize
Write a pretty version of the given XML string to the OutputStream.- Parameters:
xmlString
- the String to serializeallowDocTypeDeclaration
- whether to allow doctype processingos
- the OutputStream to write to
-
serialize
Write a pretty version of the given XML string to the Writer.- Parameters:
xmlString
- the String to serializew
- the Writer to write to
-
serialize
Write a pretty version of the given XML string to the Writer.- Parameters:
xmlString
- the String to serializeallowDocTypeDeclaration
- whether to allow doctype processingw
- the Writer to write to
-
newSAXParser
public static SAXParser newSAXParser(String schemaLanguage, Source... schemas) throws SAXException, ParserConfigurationException Factory method to create a SAXParser configured to validate according to a particular schema language and optionally providing the schema sources to validate with. The created SAXParser will be namespace-aware and not validate against DTDs.- Parameters:
schemaLanguage
- the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)schemas
- the schemas to validate against- Returns:
- the created SAXParser
- Throws:
SAXException
ParserConfigurationException
- Since:
- 1.8.7
- See Also:
-
newSAXParser
public static SAXParser newSAXParser(String schemaLanguage, boolean namespaceAware, boolean validating, Source... schemas) throws SAXException, ParserConfigurationException Factory method to create a SAXParser configured to validate according to a particular schema language and optionally providing the schema sources to validate with.- Parameters:
schemaLanguage
- the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)namespaceAware
- will the parser be namespace awarevalidating
- will the parser also validate against DTDsschemas
- the schemas to validate against- Returns:
- the created SAXParser
- Throws:
SAXException
ParserConfigurationException
- Since:
- 1.8.7
-
newSAXParser
public static SAXParser newSAXParser(String schemaLanguage, boolean namespaceAware, boolean validating, boolean allowDoctypeDecl, Source... schemas) throws SAXException, ParserConfigurationException Factory method to create a SAXParser configured to validate according to a particular schema language and optionally providing the schema sources to validate with.- Parameters:
schemaLanguage
- the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)namespaceAware
- will the parser be namespace awarevalidating
- will the parser also validate against DTDsallowDoctypeDecl
- whether to allow doctype declarations (potentially insecure)schemas
- the schemas to validate against- Returns:
- the created SAXParser
- Throws:
SAXException
ParserConfigurationException
- Since:
- 3.0.11
-
newSAXParser
public static SAXParser newSAXParser(String schemaLanguage, File schema) throws SAXException, ParserConfigurationException Factory method to create a SAXParser configured to validate according to a particular schema language and a File containing the schema to validate against. The created SAXParser will be namespace-aware and not validate against DTDs.- Parameters:
schemaLanguage
- the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)schema
- a file containing the schema to validate against- Returns:
- the created SAXParser
- Throws:
SAXException
ParserConfigurationException
- Since:
- 1.8.7
- See Also:
-
newSAXParser
public static SAXParser newSAXParser(String schemaLanguage, boolean namespaceAware, boolean validating, File schema) throws SAXException, ParserConfigurationException Factory method to create a SAXParser configured to validate according to a particular schema language and a File containing the schema to validate against.- Parameters:
schemaLanguage
- the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)namespaceAware
- will the parser be namespace awarevalidating
- will the parser also validate against DTDsschema
- a file containing the schema to validate against- Returns:
- the created SAXParser
- Throws:
SAXException
ParserConfigurationException
- Since:
- 1.8.7
-
newSAXParser
public static SAXParser newSAXParser(String schemaLanguage, URL schema) throws SAXException, ParserConfigurationException Factory method to create a SAXParser configured to validate according to a particular schema language and a URL pointing to the schema to validate against. The created SAXParser will be namespace-aware and not validate against DTDs.- Parameters:
schemaLanguage
- the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)schema
- a URL pointing to the schema to validate against- Returns:
- the created SAXParser
- Throws:
SAXException
ParserConfigurationException
- Since:
- 1.8.7
- See Also:
-
newSAXParser
public static SAXParser newSAXParser(String schemaLanguage, boolean namespaceAware, boolean validating, URL schema) throws SAXException, ParserConfigurationException Factory method to create a SAXParser configured to validate according to a particular schema language and a URL pointing to the schema to validate against.- Parameters:
schemaLanguage
- the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)namespaceAware
- will the parser be namespace awarevalidating
- will the parser also validate against DTDsschema
- a URL pointing to the schema to validate against- Returns:
- the created SAXParser
- Throws:
SAXException
ParserConfigurationException
- Since:
- 1.8.7
-
escapeXml
Escape the following characters" ' & < >
with their XML entities, e.g."bread" & "butter"
becomes"bread" & "butter"
. Notes:- Supports only the five basic XML entities (gt, lt, quot, amp, apos)
- Does not escape control characters
- Does not support DTDs or external entities
- Does not treat surrogate pairs specially
- Does not perform Unicode validation on its input
- Parameters:
orig
- the original String- Returns:
- A new string in which all characters that require escaping have been replaced with the corresponding XML entities.
- See Also:
-
escapeControlCharacters
Escape control characters (below 0x20) with their XML entities, e.g. carriage return (Ctrl-M or \r
) becomes
Notes:- Does not escape non-ascii characters above 0x7e
- Does not treat surrogate pairs specially
- Does not perform Unicode validation on its input
- Parameters:
orig
- the original String- Returns:
- A new string in which all characters that require escaping have been replaced with the corresponding XML entities.
- See Also:
-
setFeatureQuietly
-
setFeatureQuietly
-
setFeatureQuietly
-