Index: pom.xml
===================================================================
--- pom.xml	(revision 16374)
+++ pom.xml	(working copy)
@@ -156,6 +156,7 @@
 		<dependency>
 			<groupId>org.ow2.petals</groupId>
 			<artifactId>petals-commons</artifactId>
+			<version>1.0.5-SNAPSHOT</version>
 		</dependency>
 		<dependency>
 			<groupId>org.ow2.petals</groupId>
Index: src/main/java/org/ow2/petals/util/XMLUtil.java
===================================================================
--- src/main/java/org/ow2/petals/util/XMLUtil.java	(revision 16370)
+++ src/main/java/org/ow2/petals/util/XMLUtil.java	(working copy)
@@ -36,12 +36,10 @@
 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.TransformerException;
-import javax.xml.transform.TransformerFactory;
 import javax.xml.transform.dom.DOMSource;
 import javax.xml.transform.stream.StreamResult;
 
@@ -200,11 +198,14 @@
         String result = null;
         if (node != null) {
             node.normalize();
-            Transformer transformer = TransformerFactory.newInstance()
-                .newTransformer();
+            final Transformer transformer = Transformers.getDefaultTransformer();
             StringWriter stringWriter = new StringWriter();
-            transformer.transform(new DOMSource(node), new StreamResult(
-                stringWriter));
+            try {
+                transformer.transform(new DOMSource(node), new StreamResult(
+                    stringWriter));
+            } finally {
+                transformer.reset();
+            }
             StringBuffer buffer = stringWriter.getBuffer();
             result = buffer.toString();
         }
@@ -372,14 +373,17 @@
         Source source = new DOMSource(node);
         StringWriter out = new StringWriter();
         Result resultStream = new StreamResult(out);
-        TransformerFactory tFactory = TransformerFactory.newInstance();
-        Transformer transformer;
-        transformer = tFactory.newTransformer();
+        final Transformer transformer;
         if (omitDeclaration) {
-            transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION,
-                "yes");
+            transformer = Transformers.getWithoutDeclarationTransformer();
+        } else {
+            transformer = Transformers.getDefaultTransformer();
         }
-        transformer.transform(source, resultStream);
+        try {
+            transformer.transform(source, resultStream);
+        } finally {
+            transformer.reset();
+        }
         return out.toString();
     }
 
