You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by ve...@apache.org on 2011/09/30 07:27:09 UTC

svn commit: r1177511 - in /axis/axis2/java/core/branches/1_6: ./ modules/parent/ modules/saaj/src/org/apache/axis2/saaj/ modules/saaj/test/org/apache/axis2/saaj/

Author: veithen
Date: Fri Sep 30 05:27:08 2011
New Revision: 1177511

URL: http://svn.apache.org/viewvc?rev=1177511&view=rev
Log:
Merged r1147485, r1149224, r1149491 and r1149578 to the 1.6 branch to ensure compatibility with Axiom 1.2.13.

Modified:
    axis/axis2/java/core/branches/1_6/   (props changed)
    axis/axis2/java/core/branches/1_6/modules/parent/pom.xml
    axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyImpl.java
    axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java
    axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPFactoryImpl.java
    axis/axis2/java/core/branches/1_6/modules/saaj/test/org/apache/axis2/saaj/SOAPElementTest.java

Propchange: axis/axis2/java/core/branches/1_6/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Sep 30 05:27:08 2011
@@ -1 +1 @@
-/axis/axis2/java/core/trunk:1068985,1069659,1069898,1070439,1072077,1072271,1072296,1072499,1072510,1075057,1078242,1081563,1081587,1081590,1082316,1082322,1082600,1082702,1082726,1082738,1083180,1083192,1083379,1083381,1083425,1083433,1083446,1084753,1085157,1085173,1085514,1085889,1085927,1085931,1087073,1088239,1088248-1088249,1088251,1088268,1088730,1088904,1089225,1089989,1090429,1090457,1091178,1091191,1094117,1096530,1096557,1099385,1099389,1100628,1101037,1103013,1103336,1103606,1103760,1128580,1128584,1128618,1128645,1130590,1131425,1134438,1134616,1136156,1136159,1136177,1137153,1137159,1138144,1138203,1139448,1139484,1150055,1154615,1156305,1156382,1157211,1157265,1157373,1157415,1157424,1157501,1157517,1157522,1157535,1163389,1166038,1166040,1167045,1174618
+/axis/axis2/java/core/trunk:1068985,1069659,1069898,1070439,1072077,1072271,1072296,1072499,1072510,1075057,1078242,1081563,1081587,1081590,1082316,1082322,1082600,1082702,1082726,1082738,1083180,1083192,1083379,1083381,1083425,1083433,1083446,1084753,1085157,1085173,1085514,1085889,1085927,1085931,1087073,1088239,1088248-1088249,1088251,1088268,1088730,1088904,1089225,1089989,1090429,1090457,1091178,1091191,1094117,1096530,1096557,1099385,1099389,1100628,1101037,1103013,1103336,1103606,1103760,1128580,1128584,1128618,1128645,1130590,1131425,1134438,1134616,1136156,1136159,1136177,1137153,1137159,1138144,1138203,1139448,1139484,1147485,1149224,1149491,1149578,1150055,1154615,1156305,1156382,1157211,1157265,1157373,1157415,1157424,1157501,1157517,1157522,1157535,1163389,1166038,1166040,1167045,1174618

Modified: axis/axis2/java/core/branches/1_6/modules/parent/pom.xml
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/parent/pom.xml?rev=1177511&r1=1177510&r2=1177511&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/parent/pom.xml (original)
+++ axis/axis2/java/core/branches/1_6/modules/parent/pom.xml Fri Sep 30 05:27:08 2011
@@ -68,7 +68,8 @@
     <properties>
         <neethi.version>3.0.1</neethi.version>
         <woden.version>1.0M9</woden.version>
-        <axiom.version>1.2.12</axiom.version>
+        <!-- Need to ship Axis2 1.6.2 with Axiom 1.2.13 because of RAMPART-336 -->
+        <axiom.version>1.2.13-SNAPSHOT</axiom.version>
         <xmlschema.version>1.4.7</xmlschema.version>
         <ant.version>1.7.0</ant.version>
         <antlr.version>2.7.7</antlr.version>

Modified: axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyImpl.java?rev=1177511&r1=1177510&r2=1177511&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyImpl.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyImpl.java Fri Sep 30 05:27:08 2011
@@ -164,11 +164,14 @@ public class SOAPBodyImpl extends SOAPEl
         if (omSOAPBody.hasFault()) {
             throw new SOAPException("A SOAPFault has been already added to this SOAPBody");
         }
+        if (prefix == null) {
+            prefix = "";
+        }
         SOAPBodyElementImpl childEle;
         if (uri == null || "".equals(uri)) {
             childEle = new SOAPBodyElementImpl(
                     (ElementImpl)getOwnerDocument().createElement(localName));
-        } else if (prefix == null || "".equals(prefix)) {
+        } else if (prefix.length() == 0) {
             childEle = new SOAPBodyElementImpl(
                 (ElementImpl)getOwnerDocument().createElementNS(uri,
                                                                 localName));
@@ -178,7 +181,7 @@ public class SOAPBodyImpl extends SOAPEl
                                                                     prefix + ":" + localName));
         }
         childEle.element.setUserData(SAAJ_NODE, childEle, null);
-        childEle.element.setNamespace(childEle.element.declareNamespace(uri, prefix));
+        childEle.element.setNamespace(getOMFactory().createOMNamespace(uri, prefix));
         element.appendChild(childEle.element);
         ((NodeImpl)childEle.element.getParentNode()).setUserData(SAAJ_NODE, this, null);
         isBodyElementAdded = true;
@@ -546,8 +549,7 @@ public class SOAPBodyImpl extends SOAPEl
                                                                             qname.getLocalPart()));
         }
         childEle.element.setUserData(SAAJ_NODE, childEle, null);
-        childEle.element.setNamespace(childEle.element.declareNamespace(
-                qname.getNamespaceURI(), qname.getPrefix()));
+        childEle.element.setNamespace(getOMFactory().createOMNamespace(qname.getNamespaceURI(), qname.getPrefix()));
 
         element.appendChild(childEle.element);
         ((NodeImpl)childEle.element.getParentNode()).setUserData(SAAJ_NODE, this, null);

Modified: axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java?rev=1177511&r1=1177510&r2=1177511&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java Fri Sep 30 05:27:08 2011
@@ -175,7 +175,7 @@ public class SOAPElementImpl extends Nod
     */
     public SOAPElement addChildElement(String localName, String prefix, String uri)
             throws SOAPException {
-        OMNamespace omNamespace = element.declareNamespace(uri, prefix);
+        OMNamespace omNamespace = prefix == null || prefix.length() == 0 ? element.declareDefaultNamespace(uri) : element.declareNamespace(uri, prefix);
         return addChildElement(localName, omNamespace.getPrefix());
     }
 
@@ -194,7 +194,9 @@ public class SOAPElementImpl extends Nod
                         createElementNS(namespaceURI, prefix + ":" + localName));
 
         childEle.element.setUserData(SAAJ_NODE, childEle, null);
-        childEle.element.setNamespace(childEle.element.declareNamespace(namespaceURI, prefix));
+        childEle.element.setNamespace(prefix == null || prefix.length() == 0
+                ? childEle.element.declareDefaultNamespace(namespaceURI)
+                : childEle.element.declareNamespace(namespaceURI, prefix));
         element.appendChild(childEle.element);
         ((NodeImpl)childEle.element.getParentNode()).setUserData(SAAJ_NODE, this, null);
         childEle.setParentElement(this);
@@ -218,7 +220,11 @@ public class SOAPElementImpl extends Nod
       * @see javax.xml.soap.SOAPElement#addNamespaceDeclaration(java.lang.String, java.lang.String)
       */
     public SOAPElement addNamespaceDeclaration(String prefix, String uri) throws SOAPException {
-        element.declareNamespace(uri, prefix);
+        if (prefix == null || prefix.length() == 0) {
+            element.declareDefaultNamespace(uri);
+        } else {
+            element.declareNamespace(uri, prefix);
+        }
         return this;
     }
 

Modified: axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPFactoryImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPFactoryImpl.java?rev=1177511&r1=1177510&r2=1177511&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPFactoryImpl.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPFactoryImpl.java Fri Sep 30 05:27:08 2011
@@ -226,8 +226,11 @@ public class SOAPFactoryImpl extends SOA
         } else {
             omdomFactory = (OMDOMFactory)DOOMAbstractFactory.getSOAP11Factory();
         }
-        OMNamespace ns = omdomFactory.createOMNamespace(element.getNamespaceURI()
-                , element.getPrefix());
+        String prefix = element.getPrefix();
+        if (prefix == null) {
+            prefix = "";
+        }
+        OMNamespace ns = omdomFactory.createOMNamespace(element.getNamespaceURI(), prefix);
         OMElement omElement = omdomFactory.createOMElement(element.getLocalName(), ns);
         return new SOAPElementImpl((ElementImpl)omElement);
     }

Modified: axis/axis2/java/core/branches/1_6/modules/saaj/test/org/apache/axis2/saaj/SOAPElementTest.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/saaj/test/org/apache/axis2/saaj/SOAPElementTest.java?rev=1177511&r1=1177510&r2=1177511&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/saaj/test/org/apache/axis2/saaj/SOAPElementTest.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/saaj/test/org/apache/axis2/saaj/SOAPElementTest.java Fri Sep 30 05:27:08 2011
@@ -23,9 +23,11 @@ import junit.framework.Assert;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
+import org.w3c.dom.Attr;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 
+import javax.xml.XMLConstants;
 import javax.xml.namespace.QName;
 import javax.xml.soap.MessageFactory;
 import javax.xml.soap.Name;
@@ -381,6 +383,17 @@ public class SOAPElementTest extends Ass
     }
 
     @Validated @Test
+    public void testAddNamespaceDeclarationDefaultNamespace() throws SOAPException {
+        SOAPMessage msg = MessageFactory.newInstance().createMessage();
+        SOAPEnvelope envelope = msg.getSOAPPart().getEnvelope();
+        SOAPBody body = envelope.getBody();
+        SOAPElement element = body.addChildElement("test", "p", "urn:test");
+        element.addNamespaceDeclaration("", "urn:ns");
+        Attr attr = (Attr)element.getAttributes().getNamedItemNS(XMLConstants.XMLNS_ATTRIBUTE_NS_URI, "xmlns");
+        assertEquals("urn:ns", attr.getValue());
+    }
+    
+    @Validated @Test
     public void testRemoveNamespaceDeclaration() throws Exception {
         String prefix = "myPrefix";
         String uri = "myURI";