You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by ve...@apache.org on 2015/08/25 09:26:25 UTC

svn commit: r1697584 - in /webservices/axiom/trunk: implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/OMTestSuiteBuilder.java

Author: veithen
Date: Tue Aug 25 07:26:25 2015
New Revision: 1697584

URL: http://svn.apache.org/r1697584
Log:
Fix a namespace declaration issue in LLOM.

Modified:
    webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java
    webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/OMTestSuiteBuilder.java

Modified: webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java?rev=1697584&r1=1697583&r2=1697584&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java Tue Aug 25 07:26:25 2015
@@ -80,13 +80,12 @@ public class OMElementImpl extends OMNod
     /** Method handleNamespace. */
     final OMNamespace handleNamespace(QName qname) {
         forceExpand();
-        OMNamespace ns = null;
 
         // first try to find a namespace from the scope
         String namespaceURI = qname.getNamespaceURI();
         if (namespaceURI.length() > 0) {
             String prefix = qname.getPrefix();
-            ns = findNamespace(namespaceURI, prefix);
+            OMNamespace ns = findNamespace(namespaceURI, prefix);
 
             /**
              * What is left now is
@@ -97,12 +96,18 @@ public class OMElementImpl extends OMNod
                 if ("".equals(prefix)) {
                     prefix = OMSerializerUtil.getNextNSPrefix();
                 }
-                ns = declareNamespace(namespaceURI, prefix);
+                return declareNamespace(namespaceURI, prefix);
+            } else {
+                return ns;
             }
         } else if (qname.getPrefix().length() > 0) {
             throw new IllegalArgumentException("Cannot create a prefixed element with an empty namespace name");
+        } else {
+            if (getDefaultNamespace() != null) {
+                declareDefaultNamespace("");
+            }
+            return null;
         }
-        return ns;
     }
 
     public void checkChild(OMNode child) {

Modified: webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/OMTestSuiteBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/OMTestSuiteBuilder.java?rev=1697584&r1=1697583&r2=1697584&view=diff
==============================================================================
--- webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/OMTestSuiteBuilder.java (original)
+++ webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/OMTestSuiteBuilder.java Tue Aug 25 07:26:25 2015
@@ -447,11 +447,11 @@ public class OMTestSuiteBuilder extends
             if (variant.isSupportsContainer()) {
                 addTest(new org.apache.axiom.ts.om.factory.TestCreateOMElementWithNamespaceInScope1(metaFactory, variant));
                 addTest(new org.apache.axiom.ts.om.factory.TestCreateOMElementWithNamespaceInScope2(metaFactory, variant));
+                addTest(new org.apache.axiom.ts.om.factory.TestCreateOMElementWithoutNamespace2(metaFactory, variant));
+                addTest(new org.apache.axiom.ts.om.factory.TestCreateOMElementWithoutNamespace3(metaFactory, variant));
             }
             if (variant.isSupportsContainer() && variant.isSupportsDefaultNamespace()) {
                 addTest(new org.apache.axiom.ts.om.factory.TestCreateOMElementWithNamespaceInScope3(metaFactory, variant));
-                addTest(new org.apache.axiom.ts.om.factory.TestCreateOMElementWithoutNamespace2(metaFactory, variant));
-                addTest(new org.apache.axiom.ts.om.factory.TestCreateOMElementWithoutNamespace3(metaFactory, variant));
             }
         }
         if (supportsOMSourcedElement) {