Package org.keycloak.saml.common.util
Class DocumentUtil
- java.lang.Object
-
- org.keycloak.saml.common.util.DocumentUtil
-
- Direct Known Subclasses:
DocumentUtil
public class DocumentUtil extends Object
Utility dealing with DOM- Since:
- Jan 14, 2009
- Author:
- Anil.Saldhana@redhat.com
-
-
Field Summary
Fields Modifier and Type Field Description static String
feature_disallow_doctype_decl
static String
feature_external_general_entities
static String
feature_external_parameter_entities
-
Constructor Summary
Constructors Constructor Description DocumentUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static String
asString(Document doc)
Get the document as a string while ignoring any exceptionsstatic Document
createDocument()
Create a new documentstatic Document
createDocumentWithBaseNamespace(String baseNamespace, String localPart)
Create a document with the root element of the form <someElement xmlns="customNamespace"static Element
getChildElement(Element doc, QName elementQName)
Get an child element from the parent element given itsQName
static Element
getDirectChildElement(Element parent, String targetNamespace, String targetLocalName)
static Document
getDocument(File file)
Get Document from a filestatic Document
getDocument(InputStream is)
Get Document from an inputstreamstatic Document
getDocument(Reader reader)
Parse a document from a readerstatic Document
getDocument(String docString)
Parse a document from the stringstatic String
getDocumentAsString(Document signedDoc)
Marshall a document into a Stringstatic DocumentBuilder
getDocumentBuilder()
static Element
getElement(Document doc, QName elementQName)
Get an element from the document given itsQName
static InputStream
getNodeAsStream(Node node)
Stream a DOM Node as an input streamstatic String
getNodeAsString(Node node)
Marshall a DOM Node into a Stringstatic InputStream
getSourceAsStream(Source source)
Get theSource
as anInputStream
static Source
getXMLSource(Document doc)
-
-
-
Field Detail
-
feature_external_general_entities
public static final String feature_external_general_entities
- See Also:
- Constant Field Values
-
feature_external_parameter_entities
public static final String feature_external_parameter_entities
- See Also:
- Constant Field Values
-
feature_disallow_doctype_decl
public static final String feature_disallow_doctype_decl
- See Also:
- Constant Field Values
-
-
Method Detail
-
createDocument
public static Document createDocument() throws ConfigurationException
Create a new document- Returns:
- Throws:
ParserConfigurationException
ConfigurationException
-
createDocumentWithBaseNamespace
public static Document createDocumentWithBaseNamespace(String baseNamespace, String localPart) throws ProcessingException
Create a document with the root element of the form <someElement xmlns="customNamespace"- Parameters:
baseNamespace
-- Returns:
- Throws:
ProcessingException
-
getDocument
public static Document getDocument(String docString) throws ConfigurationException, ParsingException, ProcessingException
Parse a document from the string- Parameters:
docString
-- Returns:
- Throws:
IOException
SAXException
ParserConfigurationException
ConfigurationException
ParsingException
ProcessingException
-
getDocument
public static Document getDocument(Reader reader) throws ConfigurationException, ProcessingException, ParsingException
Parse a document from a reader- Parameters:
reader
-- Returns:
- Throws:
ParsingException
ParserConfigurationException
IOException
SAXException
ConfigurationException
ProcessingException
-
getDocument
public static Document getDocument(File file) throws ConfigurationException, ProcessingException, ParsingException
Get Document from a file- Parameters:
file
-- Returns:
- Throws:
ParserConfigurationException
IOException
SAXException
ConfigurationException
ProcessingException
ParsingException
-
getDocument
public static Document getDocument(InputStream is) throws ConfigurationException, ProcessingException, ParsingException
Get Document from an inputstream- Parameters:
is
-- Returns:
- Throws:
ParserConfigurationException
IOException
SAXException
ConfigurationException
ProcessingException
ParsingException
-
getDocumentAsString
public static String getDocumentAsString(Document signedDoc) throws ProcessingException, ConfigurationException
Marshall a document into a String- Parameters:
signedDoc
-- Returns:
- Throws:
TransformerFactoryConfigurationError
TransformerException
ProcessingException
ConfigurationException
-
getNodeAsString
public static String getNodeAsString(Node node) throws ProcessingException, ConfigurationException
Marshall a DOM Node into a String- Parameters:
node
-- Returns:
- Throws:
ProcessingException
ConfigurationException
-
getElement
public static Element getElement(Document doc, QName elementQName)
Get an element from the document given its
QName
First an attempt to get the element based on its namespace is made, failing which an element with the localpart ignoring any namespace is returned.
- Parameters:
doc
-elementQName
-- Returns:
-
getChildElement
public static Element getChildElement(Element doc, QName elementQName)
Get an child element from the parent element given its
QName
First an attempt to get the element based on its namespace is made, failing which an element with the localpart ignoring any namespace is returned.
- Parameters:
doc
-elementQName
-- Returns:
-
getNodeAsStream
public static InputStream getNodeAsStream(Node node) throws ConfigurationException, ProcessingException
Stream a DOM Node as an input stream- Parameters:
node
-- Returns:
- Throws:
TransformerFactoryConfigurationError
TransformerException
ConfigurationException
ProcessingException
-
getSourceAsStream
public static InputStream getSourceAsStream(Source source) throws ConfigurationException, ProcessingException
Get theSource
as anInputStream
- Parameters:
source
-- Returns:
- Throws:
ConfigurationException
ProcessingException
-
asString
public static String asString(Document doc)
Get the document as a string while ignoring any exceptions- Parameters:
doc
-- Returns:
-
getDocumentBuilder
public static DocumentBuilder getDocumentBuilder() throws ParserConfigurationException
- Throws:
ParserConfigurationException
-
getDirectChildElement
public static Element getDirectChildElement(Element parent, String targetNamespace, String targetLocalName)
- Parameters:
parent
- parent elementtargetNamespace
- namespace URItargetLocalName
- local name- Returns:
- a child element matching the target namespace and localname, where Node.getParentNode() is the parent input parameter
-
-