diff --git a/pom.xml b/pom.xml
index 3b0d46312092a0621153479bfad78be3bff6caf8..ed5c7234ccb7a5d3a25d9a8b7dddef2848c8f330 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,7 +7,7 @@
es.uvigo.esei.dai
xml
- 1.0.0
+ 1.0.1
Ejemplos de DAI - APIs XML
2014
diff --git a/src/main/java/es/uvigo/esei/dai/xml/dom/DOMParsing.java b/src/main/java/es/uvigo/esei/dai/xml/dom/DOMParsing.java
index 1e3148500275b3e777bbe77353a82562067c4ea3..dc6d5ba937b3e5b1c797e79878a81417076a929c 100644
--- a/src/main/java/es/uvigo/esei/dai/xml/dom/DOMParsing.java
+++ b/src/main/java/es/uvigo/esei/dai/xml/dom/DOMParsing.java
@@ -102,7 +102,7 @@ public class DOMParsing {
return builder.parse(new File(documentPath));
}
- public static String toXML(Document document) throws TransformerException {
+ public static String toXML(Document document) throws TransformerException, IOException {
// Creación y configuración del transformador. En este caso, se activa
// la indentación del XML
final TransformerFactory factory = TransformerFactory.newInstance();
@@ -112,10 +112,10 @@ public class DOMParsing {
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
// El resultado se almacenará en una cadena de texto
- final StringWriter writer = new StringWriter();
-
- transformer.transform(new DOMSource(document), new StreamResult(writer));
-
- return writer.toString();
+ try (final StringWriter writer = new StringWriter()) {
+ transformer.transform(new DOMSource(document), new StreamResult(writer));
+
+ return writer.toString();
+ }
}
}
diff --git a/src/main/java/es/uvigo/esei/dai/xml/xpath/XSLUtils.java b/src/main/java/es/uvigo/esei/dai/xml/xpath/XSLUtils.java
index 0e84e8d46d4eb6ee203c49bbbe819f3fa9540493..a7a8bb35b916023386c3aec4f17a43ce2724dde9 100644
--- a/src/main/java/es/uvigo/esei/dai/xml/xpath/XSLUtils.java
+++ b/src/main/java/es/uvigo/esei/dai/xml/xpath/XSLUtils.java
@@ -1,6 +1,7 @@
package es.uvigo.esei.dai.xml.xpath;
import java.io.File;
+import java.io.IOException;
import java.io.StringWriter;
import javax.xml.namespace.NamespaceContext;
@@ -76,14 +77,25 @@ public class XSLUtils {
transformer.transform(xmlSource, result);
}
- public static String transformWithXSLT(File xml, File xslt) throws TransformerException {
+ public static String transformWithXSLT(File xml, File xslt) throws TransformerException, IOException {
final TransformerFactory tFactory = TransformerFactory.newInstance();
final Transformer transformer = tFactory.newTransformer(new StreamSource(xslt));
- final StringWriter writer = new StringWriter();
+ try (final StringWriter writer = new StringWriter()) {
+ transformer.transform(new StreamSource(xml), new StreamResult(writer));
- transformer.transform(new StreamSource(xml), new StreamResult(writer));
+ return writer.toString();
+ }
+ }
+
+ public static String transformToString(File xml) throws TransformerException, IOException {
+ final TransformerFactory tFactory = TransformerFactory.newInstance();
+ final Transformer transformer = tFactory.newTransformer();
+
+ try (final StringWriter writer = new StringWriter()) {
+ transformer.transform(new StreamSource(xml), new StreamResult(writer));
- return writer.toString();
+ return writer.toString();
+ }
}
}