diff options
| author | kstranacher <kstranacher@d688527b-c9ab-4aba-bd8d-4036d912da1d> | 2011-04-06 15:29:11 +0000 | 
|---|---|---|
| committer | kstranacher <kstranacher@d688527b-c9ab-4aba-bd8d-4036d912da1d> | 2011-04-06 15:29:11 +0000 | 
| commit | ac9a6c52e96f4c737de3392a7ba16b8fa8958b85 (patch) | |
| tree | 6c134f5c2386f36401a0476be15c17045f1c7ff0 /common/src/main/java/at/gv | |
| parent | ab7c7b6a64edca60b78a89b18a1972ad5e38586e (diff) | |
| download | moa-id-spss-ac9a6c52e96f4c737de3392a7ba16b8fa8958b85.tar.gz moa-id-spss-ac9a6c52e96f4c737de3392a7ba16b8fa8958b85.tar.bz2 moa-id-spss-ac9a6c52e96f4c737de3392a7ba16b8fa8958b85.zip | |
- IAIK Libraries (repository) aktualisiert:
	iaik-moa:           Version 1.29
	iaik_jce_full:		Version 4.0_MOA
	iaik_cms:			Version 4.1_MOA
- Einbindung von Online-Vollmachten
- Update MOA-Template zur Bürgerkartenauswahl
- Update Doku
- Update Transformationen (für Online-Vollmachten)
- Änderung der Konfiguration für:
	- Online-Vollmachten		
git-svn-id: https://joinup.ec.europa.eu/svn/moa-idspss/trunk@1199 d688527b-c9ab-4aba-bd8d-4036d912da1d
Diffstat (limited to 'common/src/main/java/at/gv')
| -rw-r--r-- | common/src/main/java/at/gv/egovernment/moa/util/DOMUtils.java | 80 | 
1 files changed, 71 insertions, 9 deletions
| diff --git a/common/src/main/java/at/gv/egovernment/moa/util/DOMUtils.java b/common/src/main/java/at/gv/egovernment/moa/util/DOMUtils.java index 39cdf4e87..c5daacdc3 100644 --- a/common/src/main/java/at/gv/egovernment/moa/util/DOMUtils.java +++ b/common/src/main/java/at/gv/egovernment/moa/util/DOMUtils.java @@ -19,6 +19,7 @@ import java.io.ByteArrayInputStream;  import java.io.ByteArrayOutputStream;  import java.io.IOException;  import java.io.InputStream; +import java.io.StringWriter;  import java.util.HashMap;  import java.util.HashSet;  import java.util.Iterator; @@ -31,20 +32,15 @@ import javax.xml.parsers.DocumentBuilder;  import javax.xml.parsers.DocumentBuilderFactory;  import javax.xml.parsers.ParserConfigurationException;  import javax.xml.transform.OutputKeys; +import javax.xml.transform.Result; +import javax.xml.transform.Source;  import javax.xml.transform.Transformer; +import javax.xml.transform.TransformerConfigurationException;  import javax.xml.transform.TransformerException;  import javax.xml.transform.TransformerFactory;  import javax.xml.transform.dom.DOMSource;  import javax.xml.transform.stream.StreamResult; -import org.w3c.dom.Attr; -import org.w3c.dom.Document; -import org.w3c.dom.DocumentFragment; -import org.w3c.dom.Element; -import org.w3c.dom.NamedNodeMap; -import org.w3c.dom.Node; -import org.w3c.dom.NodeList; -  import org.apache.xerces.parsers.DOMParser;  import org.apache.xerces.parsers.SAXParser;  import org.apache.xerces.parsers.XMLGrammarPreparser; @@ -53,12 +49,18 @@ import org.apache.xerces.util.XMLGrammarPoolImpl;  import org.apache.xerces.xni.grammars.XMLGrammarDescription;  import org.apache.xerces.xni.grammars.XMLGrammarPool;  import org.apache.xerces.xni.parser.XMLInputSource; +import org.w3c.dom.Attr; +import org.w3c.dom.Document; +import org.w3c.dom.DocumentFragment; +import org.w3c.dom.Element; +import org.w3c.dom.NamedNodeMap; +import org.w3c.dom.Node; +import org.w3c.dom.NodeList;  import org.xml.sax.EntityResolver;  import org.xml.sax.ErrorHandler;  import org.xml.sax.InputSource;  import org.xml.sax.SAXException; -  import at.gv.egovernment.moa.logging.Logger;  /** @@ -258,6 +260,48 @@ public class DOMUtils {    /**     * Parse an XML document from an <code>InputStream</code>.     *  +   * @param inputStream The <code>InputStream</code> containing the XML +   * document. +   * @param validating If <code>true</code>, parse validating. +   * @param externalSchemaLocations A <code>String</code> containing namespace +   * URI to schema location pairs, the same way it is accepted by the <code>xsi: +   * schemaLocation</code> attribute.  +   * @param externalNoNamespaceSchemaLocation The schema location of the +   * schema for elements without a namespace, the same way it is accepted by the +   * <code>xsi:noNamespaceSchemaLocation</code> attribute. +   * @param entityResolver An <code>EntityResolver</code> to resolve external +   * entities (schemas and DTDs). If <code>null</code>, it will not be set. +   * @param errorHandler An <code>ErrorHandler</code> to decide what to do +   * with parsing errors. If <code>null</code>, it will not be set. +   * @return The parsed XML document as a DOM tree. +   * @throws SAXException An error occurred parsing the document. +   * @throws IOException An error occurred reading the document. +   * @throws ParserConfigurationException An error occurred configuring the XML +   * parser. +   */ +  public static Document parseDocumentSimple(InputStream inputStream) +    throws  SAXException, IOException, ParserConfigurationException { + +    DOMParser parser; +			 +    parser = new DOMParser(); +    // set parser features and properties +    parser.setFeature(NAMESPACES_FEATURE, true); +    parser.setFeature(VALIDATION_FEATURE, false); +    parser.setFeature(SCHEMA_VALIDATION_FEATURE, false); +    parser.setFeature(NORMALIZED_VALUE_FEATURE, false); +    parser.setFeature(INCLUDE_IGNORABLE_WHITESPACE_FEATURE, true); +    parser.setFeature(CREATE_ENTITY_REF_NODES_FEATURE, false); +		 +    parser.parse(new InputSource(inputStream)); +     +    return parser.getDocument(); +  } + +   +  /** +   * Parse an XML document from an <code>InputStream</code>. +   *      * It uses a <code>MOAEntityResolver</code> as the <code>EntityResolver</code>     * and a <code>MOAErrorHandler</code> as the <code>ErrorHandler</code>.     *  @@ -1000,5 +1044,23 @@ public class DOMUtils {      }      return v;    } +   +  /** +   * Returns a byte array from given node. +   * @param node +   * @return +   * @throws TransformerException +   */ +  public static byte[] nodeToByteArray(Node node) throws TransformerException { +	  Source source = new DOMSource(node); +	  ByteArrayOutputStream out = new ByteArrayOutputStream(); +	  //StringWriter stringWriter = new StringWriter(); +	  Result result = new StreamResult(out); +	  TransformerFactory factory = TransformerFactory.newInstance(); +	  Transformer transformer = factory.newTransformer(); +	  transformer.transform(source, result); +	  return out.toByteArray(); +  } +   } | 
