Mercurial > dive4elements > gnv-client
diff gnv/src/main/java/de/intevation/gnv/util/XMLUtils.java @ 11:3cb753564552
Integration of the required XSL-Transformation of the Describe-Response of the Artifactdatabase
gnv/trunk@90 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Tim Englich <tim.englich@intevation.de> |
---|---|
date | Tue, 15 Sep 2009 14:19:55 +0000 |
parents | 5e94403971af |
children | 4405f31bbc30 |
line wrap: on
line diff
--- a/gnv/src/main/java/de/intevation/gnv/util/XMLUtils.java Tue Sep 15 10:12:56 2009 +0000 +++ b/gnv/src/main/java/de/intevation/gnv/util/XMLUtils.java Tue Sep 15 14:19:55 2009 +0000 @@ -2,6 +2,7 @@ import java.io.IOException; import java.io.InputStream; +import java.io.StringBufferInputStream; import java.io.StringWriter; import org.w3c.dom.Document; @@ -175,15 +176,10 @@ return returnValue; } - public String writeDocument2String(Document document){ + public String writeNode2String(Node node){ try { - TransformerFactory transformerFactory = TransformerFactory.newInstance(); - Transformer transformer = transformerFactory.newTransformer(); - DOMSource source = new DOMSource(document); - StringWriter sw = new StringWriter(); - StreamResult result = new StreamResult(sw); - transformer.transform(source, result); - return sw.getBuffer().toString(); + DOMSource source = new DOMSource(node); + return writeDOMSource2String(source); } catch (TransformerConfigurationException e) { logger.error(e,e); } catch (TransformerFactoryConfigurationError e) { @@ -193,5 +189,44 @@ } return null; } + + public Document reInitDocument(Document document){ + + StringBufferInputStream inputStream = new StringBufferInputStream(this.writeDocument2String(document)); + return this.readDocument(inputStream); + } + + + public String writeDocument2String(Document document){ + try { + DOMSource source = new DOMSource(document); + return writeDOMSource2String(source); + } catch (TransformerConfigurationException e) { + logger.error(e,e); + } catch (TransformerFactoryConfigurationError e) { + logger.error(e,e); + } catch (TransformerException e) { + logger.error(e,e); + } + return null; + } + + /** + * @param source + * @return + * @throws TransformerFactoryConfigurationError + * @throws TransformerConfigurationException + * @throws TransformerException + */ + private String writeDOMSource2String(DOMSource source) + throws TransformerFactoryConfigurationError, + TransformerConfigurationException, TransformerException { + TransformerFactory transformerFactory = TransformerFactory.newInstance(); + Transformer transformer = transformerFactory.newTransformer(); + StringWriter sw = new StringWriter(); + StreamResult result = new StreamResult(sw); + transformer.transform(source, result); + return sw.getBuffer().toString(); + } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8: