be.destin.skos.xml
Class XMLUtil

java.lang.Object
  extended by be.destin.skos.xml.XMLUtil

public class XMLUtil
extends java.lang.Object

This class provides a set of static methods to load and transform XML documents. It supports parameter-aware stylesheets (XSLT).

Author:
Christophe Dupriez

Field Summary
static byte[] begXmlDecl
           
static byte[] endXmlDecl
           
 
Constructor Summary
XMLUtil()
           
 
Method Summary
static org.w3c.dom.Document loadXML(java.lang.String filename)
          Loads a W3C XML document from a file.
static javax.xml.transform.Transformer openStandardTransformer(java.lang.String xsltFilename)
          Imposer le XSLT standard de JAVA: com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl et pas: -Djavax.xml.transform.TransformerFactory=net.sf.saxon.TransformerFactoryImpl et pas: -Djavax.xml.transform.TransformerFactory=org.apache.xalan.processor.TransformerFactoryImpl
static javax.xml.transform.Transformer openStreamingTransformer(javax.xml.stream.XMLInputFactory inputFactory, java.lang.String xsltFilename, java.lang.String id)
           
static javax.xml.transform.Transformer openTransformer(java.lang.String xsltFilename)
           
static org.w3c.dom.Document transformDocument(org.w3c.dom.Document xmlDocument, java.util.Hashtable parameters, java.lang.String xsltFilename)
          Applies a stylesheet (that receives parameters) to a given xml document.
static org.w3c.dom.Document transformDocument(org.w3c.dom.Document xmlDocument, java.lang.String xsltFilename)
          Applies a stylesheet to a given xml document.
static java.lang.String transformDocumentAsString(org.w3c.dom.Document xmlDocument, java.util.Hashtable parameters, java.lang.String xsltFilename)
          Applies a stylesheet (that receives parameters) to a given xml document.
static java.lang.String transformDocumentAsString(org.w3c.dom.Document xmlDocument, java.lang.String xsltFilename)
          Applies a stylesheet to a given xml document.
static void transformObject2Writer(java.lang.String xsltFilename, java.util.Hashtable<java.lang.String,java.lang.String> parameters, java.lang.Object o, java.io.Writer out)
          Applies a stylesheet (that receives parameters) to a given xml document.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

begXmlDecl

public static final byte[] begXmlDecl

endXmlDecl

public static final byte[] endXmlDecl
Constructor Detail

XMLUtil

public XMLUtil()
Method Detail

loadXML

public static org.w3c.dom.Document loadXML(java.lang.String filename)
                                    throws java.io.IOException,
                                           javax.xml.parsers.ParserConfigurationException,
                                           org.xml.sax.SAXException
Loads a W3C XML document from a file.

Parameters:
filename - The name of the file to be loaded
Returns:
a document object model object representing the XML file
Throws:
java.io.IOException
javax.xml.parsers.ParserConfigurationException
org.xml.sax.SAXException

openStreamingTransformer

public static javax.xml.transform.Transformer openStreamingTransformer(javax.xml.stream.XMLInputFactory inputFactory,
                                                                       java.lang.String xsltFilename,
                                                                       java.lang.String id)
                                                                throws java.io.IOException,
                                                                       javax.xml.transform.TransformerConfigurationException,
                                                                       javax.xml.stream.XMLStreamException
Parameters:
inputFactory -
xsltFilename -
id -
Returns:
Throws:
java.io.IOException
javax.xml.transform.TransformerConfigurationException
javax.xml.stream.XMLStreamException

transformDocument

public static org.w3c.dom.Document transformDocument(org.w3c.dom.Document xmlDocument,
                                                     java.lang.String xsltFilename)
                                              throws java.lang.Exception
Applies a stylesheet to a given xml document.

Parameters:
xmlDocument - the xml document to be transformed
xsltFilename - the filename of the stylesheet
Returns:
the transformed xml document
Throws:
java.lang.Exception

transformDocument

public static org.w3c.dom.Document transformDocument(org.w3c.dom.Document xmlDocument,
                                                     java.util.Hashtable parameters,
                                                     java.lang.String xsltFilename)
                                              throws java.lang.Exception
Applies a stylesheet (that receives parameters) to a given xml document.

Parameters:
xmlDocument - the xml document to be transformed
parameters - the hashtable with the parameters to be passed to the stylesheet
xsltFilename - the filename of the stylesheet
Returns:
the transformed xml document
Throws:
java.lang.Exception

transformDocumentAsString

public static java.lang.String transformDocumentAsString(org.w3c.dom.Document xmlDocument,
                                                         java.util.Hashtable parameters,
                                                         java.lang.String xsltFilename)
                                                  throws java.lang.Exception
Applies a stylesheet (that receives parameters) to a given xml document. The resulting XML document is converted to a string after transformation.

Parameters:
xmlDocument - the xml document to be transformed
parameters - the hashtable with the parameters to be passed to the stylesheet
xsltFilename - the filename of the stylesheet
Returns:
the transformed xml document as a string
Throws:
java.lang.Exception

transformObject2Writer

public static void transformObject2Writer(java.lang.String xsltFilename,
                                          java.util.Hashtable<java.lang.String,java.lang.String> parameters,
                                          java.lang.Object o,
                                          java.io.Writer out)
                                   throws java.lang.Exception
Applies a stylesheet (that receives parameters) to a given xml document. The resulting XML document is written with provided writer after transformation.

Parameters:
xmlDocument - the xml document to be transformed
parameters - the hashtable with the parameters to be passed to the stylesheet
xsltFilename - the filename of the stylesheet
Throws:
java.lang.Exception

transformDocumentAsString

public static java.lang.String transformDocumentAsString(org.w3c.dom.Document xmlDocument,
                                                         java.lang.String xsltFilename)
                                                  throws java.lang.Exception
Applies a stylesheet to a given xml document.

Parameters:
xmlDocument - the xml document to be transformed
xsltFilename - the filename of the stylesheet
Returns:
the transformed xml document
Throws:
java.lang.Exception

openTransformer

public static javax.xml.transform.Transformer openTransformer(java.lang.String xsltFilename)
                                                       throws java.io.IOException,
                                                              javax.xml.transform.TransformerConfigurationException,
                                                              org.xml.sax.SAXException
Parameters:
xsltFilename -
Returns:
Throws:
java.io.IOException
javax.xml.transform.TransformerConfigurationException
org.xml.sax.SAXException

openStandardTransformer

public static javax.xml.transform.Transformer openStandardTransformer(java.lang.String xsltFilename)
                                                               throws java.io.IOException,
                                                                      javax.xml.transform.TransformerConfigurationException,
                                                                      org.xml.sax.SAXException
Imposer le XSLT standard de JAVA: com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl et pas: -Djavax.xml.transform.TransformerFactory=net.sf.saxon.TransformerFactoryImpl et pas: -Djavax.xml.transform.TransformerFactory=org.apache.xalan.processor.TransformerFactoryImpl

Parameters:
xsltFilename -
Returns:
Throws:
java.io.IOException
javax.xml.transform.TransformerConfigurationException
org.xml.sax.SAXException