svn commit: r1187875 - /axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/context/externalize/MessageExternalizeUtils.java
Author: veithen Date: Sun Oct 23 12:19:54 2011 New Revision: 1187875 URL: http://svn.apache.org/viewvc?rev=1187875&view=rev Log: Use the new OMXMLBuilderFactory API instead of creating a builder directly. Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/context/externalize/MessageExternalizeUtils.java Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/context/externalize/MessageExternalizeUtils.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/context/externalize/MessageExternalizeUtils.java?rev=1187875&r1=1187874&r2=1187875&view=diff == --- axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/context/externalize/MessageExternalizeUtils.java (original) +++ axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/context/externalize/MessageExternalizeUtils.java Sun Oct 23 12:19:54 2011 @@ -20,10 +20,9 @@ package org.apache.axis2.context.externalize; import org.apache.axiom.om.OMOutputFormat; -import org.apache.axiom.om.impl.builder.StAXBuilder; -import org.apache.axiom.om.util.StAXUtils; +import org.apache.axiom.om.OMXMLBuilderFactory; +import org.apache.axiom.om.OMXMLParserWrapper; import org.apache.axiom.soap.SOAPEnvelope; -import org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder; import org.apache.axis2.AxisFault; import org.apache.axis2.builder.BuilderUtil; import org.apache.axis2.context.MessageContext; @@ -32,7 +31,6 @@ import org.apache.axis2.transport.Transp import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import javax.xml.stream.XMLStreamReader; import java.io.BufferedOutputStream; import java.io.IOException; import java.io.InputStream; @@ -229,7 +227,7 @@ public class MessageExternalizeUtils im } MessageInputStream mis = new MessageInputStream(in); -StAXBuilder builder = null; +OMXMLParserWrapper builder = null; try { if (optimized) { boolean isSOAP = true; @@ -241,8 +239,7 @@ public class MessageExternalizeUtils im envelope = (SOAPEnvelope) builder.getDocumentElement(); envelope.buildWithAttachments(); } else { -XMLStreamReader xmlreader = StAXUtils.createXMLStreamReader(mis, charSetEnc); -builder = new StAXSOAPModelBuilder(xmlreader, namespaceURI); +builder = OMXMLBuilderFactory.createSOAPModelBuilder(mis, charSetEnc); envelope = (SOAPEnvelope) builder.getDocumentElement(); envelope.build(); }
svn commit: r1187907 - /axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/RMMsgContext.java
Author: veithen Date: Sun Oct 23 15:33:58 2011 New Revision: 1187907 URL: http://svn.apache.org/viewvc?rev=1187907&view=rev Log: Fixed incorrect Axiom iterator usage. Modified: axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/RMMsgContext.java Modified: axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/RMMsgContext.java URL: http://svn.apache.org/viewvc/axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/RMMsgContext.java?rev=1187907&r1=1187906&r2=1187907&view=diff == --- axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/RMMsgContext.java (original) +++ axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/RMMsgContext.java Sun Oct 23 15:33:58 2011 @@ -125,7 +125,7 @@ public class RMMsgContext { while(existingHeaders.hasNext()){ OMElement oe = (OMElement)existingHeaders.next(); if(rmNamespaceValue.equals(oe.getNamespace().getNamespaceURI())){ - oe.detach(); + existingHeaders.remove(); } } }
svn commit: r1187912 - /axis/axis2/java/sandesha/trunk/modules/tests/src/test/java/org/apache/sandesha2/SandeshaTestCase.java
Author: veithen Date: Sun Oct 23 15:59:36 2011 New Revision: 1187912 URL: http://svn.apache.org/viewvc?rev=1187912&view=rev Log: * Use the new OMXMLBuilderFactory API. * Avoid FileReader because it uses the platform default encoding and that may cause issues if it is not UTF-8. Modified: axis/axis2/java/sandesha/trunk/modules/tests/src/test/java/org/apache/sandesha2/SandeshaTestCase.java Modified: axis/axis2/java/sandesha/trunk/modules/tests/src/test/java/org/apache/sandesha2/SandeshaTestCase.java URL: http://svn.apache.org/viewvc/axis/axis2/java/sandesha/trunk/modules/tests/src/test/java/org/apache/sandesha2/SandeshaTestCase.java?rev=1187912&r1=1187911&r2=1187912&view=diff == --- axis/axis2/java/sandesha/trunk/modules/tests/src/test/java/org/apache/sandesha2/SandeshaTestCase.java (original) +++ axis/axis2/java/sandesha/trunk/modules/tests/src/test/java/org/apache/sandesha2/SandeshaTestCase.java Sun Oct 23 15:59:36 2011 @@ -19,15 +19,10 @@ package org.apache.sandesha2; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; -import java.io.FileReader; -import java.io.IOException; -import java.io.InputStreamReader; +import java.io.InputStream; import java.util.Properties; import javax.xml.namespace.QName; -import javax.xml.stream.XMLInputFactory; -import javax.xml.stream.XMLStreamException; -import javax.xml.stream.XMLStreamReader; import junit.framework.TestCase; @@ -35,8 +30,8 @@ import org.apache.axiom.om.OMAbstractFac import org.apache.axiom.om.OMElement; import org.apache.axiom.om.OMFactory; import org.apache.axiom.om.OMNamespace; +import org.apache.axiom.om.OMXMLBuilderFactory; import org.apache.axiom.om.OMXMLParserWrapper; -import org.apache.axiom.om.impl.llom.factory.OMXMLBuilderFactory; import org.apache.axiom.soap.SOAPBody; import org.apache.axiom.soap.SOAPEnvelope; import org.apache.axis2.client.async.AxisCallback; @@ -130,11 +125,10 @@ public class SandeshaTestCase extends Te Thread.sleep(300); } - protected InputStreamReader getResource(String relativePath, String resourceName) { + protected InputStream getResource(String relativePath, String resourceName) { String resourceFile = resourceDir + relativePath + File.separator + resourceName; try { -FileReader reader = new FileReader(resourceFile); -return reader; +return new FileInputStream(resourceFile); } catch (FileNotFoundException e) { throw new RuntimeException("cannot load the test-resource", e); } @@ -145,16 +139,9 @@ public class SandeshaTestCase extends Te } protected SOAPEnvelope getSOAPEnvelope(String relativePath, String resourceName) { -try { -XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader( -getResource(relativePath, resourceName)); -OMXMLParserWrapper wrapper = OMXMLBuilderFactory.createStAXSOAPModelBuilder( -OMAbstractFactory.getSOAP11Factory(), reader); -return (SOAPEnvelope) wrapper.getDocumentElement(); - -} catch (XMLStreamException e) { -throw new RuntimeException(e); -} +OMXMLParserWrapper wrapper = OMXMLBuilderFactory.createSOAPModelBuilder( +getResource(relativePath, resourceName), null); +return (SOAPEnvelope) wrapper.getDocumentElement(); } protected SOAPEnvelope getEmptySOAPEnvelope() {
svn commit: r1187929 - in /axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2: FaultData.java util/FaultManager.java
Author: veithen Date: Sun Oct 23 16:53:54 2011 New Revision: 1187929 URL: http://svn.apache.org/viewvc?rev=1187929&view=rev Log: * Fault code should also be a QName. * Some code simplifications using features available in Axiom. Modified: axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/FaultData.java axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java Modified: axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/FaultData.java URL: http://svn.apache.org/viewvc/axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/FaultData.java?rev=1187929&r1=1187928&r2=1187929&view=diff == --- axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/FaultData.java (original) +++ axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/FaultData.java Sun Oct 23 16:53:54 2011 @@ -32,7 +32,7 @@ public class FaultData { private int type; - private String code; + private QName code; private QName subcode; @@ -89,11 +89,11 @@ public class FaultData { this.type = type; } - public String getCode() { + public QName getCode() { return code; } - public void setCode(String code) { + public void setCode(QName code) { this.code = code; } Modified: axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java URL: http://svn.apache.org/viewvc/axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java?rev=1187929&r1=1187928&r2=1187929&view=diff == --- axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java (original) +++ axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java Sun Oct 23 16:53:54 2011 @@ -36,6 +36,7 @@ import org.apache.axiom.soap.SOAPFaultRe import org.apache.axiom.soap.SOAPFaultSubCode; import org.apache.axiom.soap.SOAPFaultText; import org.apache.axiom.soap.SOAPFaultValue; +import org.apache.axiom.soap.SOAPVersion; import org.apache.axis2.AxisFault; import org.apache.axis2.addressing.AddressingConstants; import org.apache.axis2.addressing.EndpointReference; @@ -178,18 +179,13 @@ public class FaultManager { // Return an UnknownSequence error MessageContext messageContext = rmMessageContext.getMessageContext(); - int SOAPVersion = SandeshaUtil.getSOAPVersion(messageContext.getEnvelope()); - FaultData data = new FaultData(); - if (SOAPVersion == Sandesha2Constants.SOAPVersion.v1_1) - data.setCode(SOAP11Constants.FAULT_CODE_SENDER); - else - data.setCode(SOAP12Constants.FAULT_CODE_SENDER); + data.setCode(messageContext.getEnvelope().getVersion().getSenderFaultCode()); data.setSubcode(SpecSpecificConstants.getFaultSubcode(rmMessageContext.getRMNamespaceValue(), Sandesha2Constants.SOAPFaults.FaultType.UNKNOWN_SEQUENCE )); - SOAPFactory factory = SOAPAbstractFactory.getSOAPFactory(SOAPVersion); + SOAPFactory factory = (SOAPFactory)messageContext.getEnvelope().getOMFactory(); OMElement identifierElement = factory.createOMElement(Sandesha2Constants.WSRM_COMMON.IDENTIFIER, rmMessageContext.getRMNamespaceValue(), Sandesha2Constants.WSRM_COMMON.NS_PREFIX_RM); @@ -264,14 +260,11 @@ public class FaultManager { SequenceAcknowledgement sequenceAcknowledgement, Range acknowledgementRange, StorageManager storageManager, boolean piggybackedMessage, EndpointReference acksToEPR) throws AxisFault { FaultData data = new FaultData(); - int SOAPVersion = SandeshaUtil.getSOAPVersion(rmMsgCtx.getMessageContext().getEnvelope()); - if (SOAPVersion == Sandesha2Constants.SOAPVersion.v1_1) - data.setCode(SOAP11Constants.FAULT_CODE_SENDER); - else - data.setCode(SOAP12Constants.FAULT_CODE_SENDER); + SOAPVersion version = rmMsgCtx.getMessageContext().getEnvelope().getVersion(); + data.setCode(version.getSenderFaultCode()); if (log.isDebugEnabled()) - log.debug("makingInvalidAck piggy=" + piggybackedMessage + ": soap=" + SOAPVersion); +
svn commit: r1187930 - /axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java
Author: veithen Date: Sun Oct 23 16:55:57 2011 New Revision: 1187930 URL: http://svn.apache.org/viewvc?rev=1187930&view=rev Log: Fixed some variable names. Modified: axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java Modified: axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java URL: http://svn.apache.org/viewvc/axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java?rev=1187930&r1=1187929&r2=1187930&view=diff == --- axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java (original) +++ axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java Sun Oct 23 16:55:57 2011 @@ -375,7 +375,7 @@ public class FaultManager { SOAPFaultCode faultCode = factory.createSOAPFaultCode(); SOAPFaultSubCode faultSubCode = factory.createSOAPFaultSubCode(faultCode); - SOAPFaultValue faultColdValue = factory.createSOAPFaultValue(faultCode); + SOAPFaultValue faultCodeValue = factory.createSOAPFaultValue(faultCode); SOAPFaultValue faultSubcodeValue = factory.createSOAPFaultValue(faultSubCode); faultSubcodeValue.setText(data.getSubcode()); @@ -398,18 +398,18 @@ public class FaultManager { referenceRMMsgContext.setProperty(SOAP12Constants.SOAP_FAULT_CODE_LOCAL_NAME, faultCode); referenceRMMsgContext.setProperty(SOAP12Constants.SOAP_FAULT_REASON_LOCAL_NAME, reason); referenceRMMsgContext.setProperty(SOAP12Constants.SOAP_FAULT_DETAIL_LOCAL_NAME, detail); - faultColdValue.setText(data.getCode()); + faultCodeValue.setText(data.getCode()); } else if (SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI.equals (SOAPNamespaceValue)) { reason.setText(data.getReason()); referenceRMMsgContext.setProperty(SOAP11Constants.SOAP_FAULT_CODE_LOCAL_NAME, faultCode); referenceRMMsgContext.setProperty(SOAP11Constants.SOAP_FAULT_DETAIL_LOCAL_NAME, detail); referenceRMMsgContext.setProperty(SOAP11Constants.SOAP_FAULT_STRING_LOCAL_NAME, reason); - faultColdValue.setText(data.getSubcode()); + faultCodeValue.setText(data.getSubcode()); } - AxisFault fault = new AxisFault(faultColdValue.getTextAsQName(), data.getReason(), "", "", data.getDetail()); + AxisFault fault = new AxisFault(faultCodeValue.getTextAsQName(), data.getReason(), "", "", data.getDetail()); fault.setFaultAction(Sandesha2Constants.SPEC_2007_02.Actions.MC_FAULT); //if this is throwable throwing it out, else we will log here. @@ -520,10 +520,10 @@ public class FaultManager { SOAPFaultCode faultCode = factory.createSOAPFaultCode(); SOAPFaultSubCode faultSubCode = factory.createSOAPFaultSubCode(faultCode); - SOAPFaultValue faultColdValue = factory.createSOAPFaultValue(faultCode); + SOAPFaultValue faultCodeValue = factory.createSOAPFaultValue(faultCode); SOAPFaultValue faultSubcodeValue = factory.createSOAPFaultValue(faultSubCode); - faultColdValue.setText(data.getCode()); + faultCodeValue.setText(data.getCode()); faultSubcodeValue.setText(data.getSubcode()); @@ -546,7 +546,7 @@ public class FaultManager { referenceRMMsgContext.setProperty(SOAP12Constants.SOAP_FAULT_REASON_LOCAL_NAME, reason); referenceRMMsgContext.setProperty(SOAP12Constants.SOAP_FAULT_DETAIL_LOCAL_NAME, detail); - AxisFault fault = new AxisFault(faultColdValue.getTextAsQName(), data.getReason(), "", "", data.getDetail()); + AxisFault fault = new AxisFault(faultCodeValue.getTextAsQName(), data.getReason(), "", "", data.getDetail()); fault.setFaultAction(SpecSpecificConstants.getAddressingFaultAction(referenceRMMsgContext.getRMSpecVersion())); //if this is throwable throwing it out, else we will log here. @@ -600,14 +600,14 @@ public class FaultManager { TransportUtils.setResponseWritten(referenceRMMsgContext.getMessageContext(), true); }
svn commit: r1187957 - /axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java
Author: veithen Date: Sun Oct 23 19:35:37 2011 New Revision: 1187957 URL: http://svn.apache.org/viewvc?rev=1187957&view=rev Log: Don't attempt to create fault subcodes with SOAP 1.1. Modified: axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java Modified: axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java URL: http://svn.apache.org/viewvc/axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java?rev=1187957&r1=1187956&r2=1187957&view=diff == --- axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java (original) +++ axis/axis2/java/sandesha/trunk/modules/core/src/main/java/org/apache/sandesha2/util/FaultManager.java Sun Oct 23 19:35:37 2011 @@ -27,6 +27,7 @@ import javax.xml.namespace.QName; import org.apache.axiom.om.OMElement; import org.apache.axiom.soap.SOAP11Constants; import org.apache.axiom.soap.SOAP12Constants; +import org.apache.axiom.soap.SOAP12Version; import org.apache.axiom.soap.SOAPEnvelope; import org.apache.axiom.soap.SOAPFactory; import org.apache.axiom.soap.SOAPFault; @@ -35,7 +36,6 @@ import org.apache.axiom.soap.SOAPFaultDe import org.apache.axiom.soap.SOAPFaultReason; import org.apache.axiom.soap.SOAPFaultSubCode; import org.apache.axiom.soap.SOAPFaultText; -import org.apache.axiom.soap.SOAPFaultValue; import org.apache.axiom.soap.SOAPVersion; import org.apache.axis2.AxisFault; import org.apache.axis2.addressing.AddressingConstants; @@ -372,15 +372,14 @@ public class FaultManager { private static void makeMakeConnectionFault(RMMsgContext referenceRMMsgContext, FaultData data) throws AxisFault { SOAPFactory factory = (SOAPFactory) referenceRMMsgContext.getSOAPEnvelope().getOMFactory(); + boolean isSOAP12 = factory.getSOAPVersion() == SOAP12Version.getSingleton(); SOAPFaultCode faultCode = factory.createSOAPFaultCode(); - SOAPFaultSubCode faultSubCode = factory.createSOAPFaultSubCode(faultCode); - - SOAPFaultValue faultCodeValue = factory.createSOAPFaultValue(faultCode); - SOAPFaultValue faultSubcodeValue = factory.createSOAPFaultValue(faultSubCode); - - faultSubcodeValue.setText(data.getSubcode()); - - faultCode.setSubCode(faultSubCode); + QName faultCodeValue = isSOAP12 ? data.getCode() : data.getSubcode(); + faultCode.setValue(faultCodeValue); + if (isSOAP12) { + SOAPFaultSubCode faultSubCode = factory.createSOAPFaultSubCode(faultCode); + faultSubCode.setValue(data.getSubcode()); + } SOAPFaultReason reason = factory.createSOAPFaultReason(); SOAPFaultText reasonText = factory.createSOAPFaultText(); @@ -390,26 +389,22 @@ public class FaultManager { if (data.getDetail() != null) detail.addDetailEntry(data.getDetail()); - String SOAPNamespaceValue = factory.getSoapVersionURI(); - - if (SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI.equals(SOAPNamespaceValue)) { + if (isSOAP12) { reasonText.setLang(Sandesha2Constants.LANG_EN); reason.addSOAPText(reasonText); referenceRMMsgContext.setProperty(SOAP12Constants.SOAP_FAULT_CODE_LOCAL_NAME, faultCode); referenceRMMsgContext.setProperty(SOAP12Constants.SOAP_FAULT_REASON_LOCAL_NAME, reason); referenceRMMsgContext.setProperty(SOAP12Constants.SOAP_FAULT_DETAIL_LOCAL_NAME, detail); - faultCodeValue.setText(data.getCode()); - } else if (SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI.equals (SOAPNamespaceValue)) { + } else { reason.setText(data.getReason()); referenceRMMsgContext.setProperty(SOAP11Constants.SOAP_FAULT_CODE_LOCAL_NAME, faultCode); referenceRMMsgContext.setProperty(SOAP11Constants.SOAP_FAULT_DETAIL_LOCAL_NAME, detail); referenceRMMsgContext.setProperty(SOAP11Constants.SOAP_FAULT_STRING_LOCAL_NAME, reason); - faultCodeValue.setText(data.getSubcode()); } - AxisFault fault = new AxisFault(faultCodeValue.getTextAsQName(), data.getReason(), "", "", data.getDetail()); + AxisFault fault = new AxisFault(faultCodeValue, data.getReason(), "", "", data.getDetail()); fault.setFaultAction(Sandesha2Constants.SPEC_2007_02.Act