From 1c1db7d9148cd872e9c69ed1685fcea29227d301 Mon Sep 17 00:00:00 2001 From: Arjen Poutsma Date: Mon, 27 Jan 2014 12:42:57 +0100 Subject: [PATCH] AxiomUtils.toEnveloper now using StAXUtils Previously, AxiomUtils.toEnvelope() constructed its own XMLInputFactory for creating a XMLStreamReader. Now we use Axiom's StAXUtils instead, thus allowing users to use the standard Axiom mechanisms for setting STAX properties etc. Issue: SWS-851 --- .../springframework/ws/soap/axiom/support/AxiomUtils.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/spring-ws-core/src/main/java/org/springframework/ws/soap/axiom/support/AxiomUtils.java b/spring-ws-core/src/main/java/org/springframework/ws/soap/axiom/support/AxiomUtils.java index 3e61980e..b7a9e97c 100644 --- a/spring-ws-core/src/main/java/org/springframework/ws/soap/axiom/support/AxiomUtils.java +++ b/spring-ws-core/src/main/java/org/springframework/ws/soap/axiom/support/AxiomUtils.java @@ -34,6 +34,7 @@ import org.apache.axiom.om.OMContainer; import org.apache.axiom.om.OMElement; import org.apache.axiom.om.OMException; import org.apache.axiom.om.OMNamespace; +import org.apache.axiom.om.util.StAXUtils; import org.apache.axiom.soap.SOAPEnvelope; import org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder; import org.w3c.dom.DOMImplementation; @@ -161,8 +162,10 @@ public abstract class AxiomUtils { ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); - StAXSOAPModelBuilder stAXSOAPModelBuilder = - new StAXSOAPModelBuilder(XMLInputFactory.newInstance().createXMLStreamReader(bis), null); + XMLInputFactory inputFactory = StAXUtils.getXMLInputFactory(); + + StAXSOAPModelBuilder stAXSOAPModelBuilder = + new StAXSOAPModelBuilder(inputFactory.createXMLStreamReader(bis), null); SOAPEnvelope envelope = stAXSOAPModelBuilder.getSOAPEnvelope(); // Necessary to build a correct Axiom tree, see SWS-483