Author: veithen Date: Sat Jan 19 18:57:03 2013 New Revision: 1435637 URL: http://svn.apache.org/viewvc?rev=1435637&view=rev Log: Maybe in older Axiom versions this wasn't straight-forward, but nowadays, getting the SOAPFactory from a SOAPEnvelope or SOAPBody is trivial.
Modified: axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/XMLSpineImpl.java axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/util/MessageUtils.java axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/util/XMLFaultUtils.java Modified: axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/XMLSpineImpl.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/XMLSpineImpl.java?rev=1435637&r1=1435636&r2=1435637&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/XMLSpineImpl.java (original) +++ axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/XMLSpineImpl.java Sat Jan 19 18:57:03 2013 @@ -43,7 +43,6 @@ import org.apache.axis2.jaxws.message.Pr import org.apache.axis2.jaxws.message.XMLFault; import org.apache.axis2.jaxws.message.factory.BlockFactory; import org.apache.axis2.jaxws.message.factory.OMBlockFactory; -import org.apache.axis2.jaxws.message.util.MessageUtils; import org.apache.axis2.jaxws.message.util.Reader2Writer; import org.apache.axis2.jaxws.message.util.XMLFaultUtils; import org.apache.axis2.jaxws.registry.FactoryRegistry; @@ -141,7 +140,7 @@ class XMLSpineImpl implements XMLSpine { */ private void init(SOAPEnvelope envelope) throws WebServiceException { root = envelope; - soapFactory = MessageUtils.getSOAPFactory(root); + soapFactory = (SOAPFactory)envelope.getOMFactory(); // Advance past the header SOAPHeader header = root.getHeader(); Modified: axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/util/MessageUtils.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/util/MessageUtils.java?rev=1435637&r1=1435636&r2=1435637&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/util/MessageUtils.java (original) +++ axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/util/MessageUtils.java Sat Jan 19 18:57:03 2013 @@ -19,15 +19,7 @@ package org.apache.axis2.jaxws.message.util; -import org.apache.axiom.om.OMAbstractFactory; -import org.apache.axiom.om.OMDocument; -import org.apache.axiom.om.OMElement; -import org.apache.axiom.om.OMFactory; -import org.apache.axiom.om.OMXMLParserWrapper; -import org.apache.axiom.om.impl.builder.StAXBuilder; -import org.apache.axiom.soap.SOAP11Constants; import org.apache.axiom.soap.SOAPEnvelope; -import org.apache.axiom.soap.SOAPFactory; import org.apache.axis2.AxisFault; import org.apache.axis2.Constants; import org.apache.axis2.Constants.Configuration; @@ -67,45 +59,6 @@ public class MessageUtils { private static final Log log = LogFactory.getLog(MessageUtils.class); /** - * Get an axiom SOAPFactory for the specified element - * - * @param e OMElement - * @return SOAPFactory - */ - public static SOAPFactory getSOAPFactory(OMElement e) { - // Getting a factory from a SOAPEnvelope is not straight-forward. - // Please change this code if an easier mechanism is discovered. - - OMXMLParserWrapper builder = e.getBuilder(); - if (builder instanceof StAXBuilder) { - StAXBuilder staxBuilder = (StAXBuilder)builder; - OMDocument document = staxBuilder.getDocument(); - if (document != null) { - OMFactory factory = document.getOMFactory(); - if (factory instanceof SOAPFactory) { - return (SOAPFactory)factory; - } - } - } - // Flow to here indicates that the envelope does not have - // an accessible factory. Create a new factory based on the - // protocol. - - while (e != null && !(e instanceof SOAPEnvelope)) { - e = (OMElement)e.getParent(); - } - if (e instanceof SOAPEnvelope) { - if (SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI. - equals(e.getNamespace().getNamespaceURI())) { - return OMAbstractFactory.getSOAP11Factory(); - } else { - return OMAbstractFactory.getSOAP12Factory(); - } - } - return null; - } - - /** * Create an SAAJ AttachmentPart from a JAXWS Attachment * @param cid String content id * @param dh DataHandler Modified: axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/util/XMLFaultUtils.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/util/XMLFaultUtils.java?rev=1435637&r1=1435636&r2=1435637&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/util/XMLFaultUtils.java (original) +++ axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/util/XMLFaultUtils.java Sat Jan 19 18:57:03 2013 @@ -448,7 +448,7 @@ public class XMLFaultUtils { boolean ignoreDetailBlocks) throws WebServiceException { // Get the factory and create the soapFault - SOAPFactory factory = MessageUtils.getSOAPFactory(body); + SOAPFactory factory = (SOAPFactory)body.getOMFactory(); SOAPFault soapFault = factory.createSOAPFault(body); OMNamespace ns = body.getNamespace();