Author: veithen
Date: Sat Mar 14 11:42:33 2009
New Revision: 753639

URL: http://svn.apache.org/viewvc?rev=753639&view=rev
Log:
* Merged changes in r526111 (fixing WSCOMMONS-190) from OMStAXWrapper to 
DOMStAXWrapper.
* Added a unit test for this issue.

Modified:
    
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/test/java/org/apache/axiom/om/impl/OMStAXWrapperTestBase.java
    
webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DOMStAXWrapper.java

Modified: 
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/test/java/org/apache/axiom/om/impl/OMStAXWrapperTestBase.java
URL: 
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-api/src/test/java/org/apache/axiom/om/impl/OMStAXWrapperTestBase.java?rev=753639&r1=753638&r2=753639&view=diff
==============================================================================
--- 
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/test/java/org/apache/axiom/om/impl/OMStAXWrapperTestBase.java
 (original)
+++ 
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/test/java/org/apache/axiom/om/impl/OMStAXWrapperTestBase.java
 Sat Mar 14 11:42:33 2009
@@ -178,10 +178,11 @@
         assertEquals("c", stream.getLocalName());
     }
     
-    public void testGetNamespaceContext() throws Exception {
+    private void testGetNamespaceContext(boolean cache) throws Exception {
         OMElement element = AXIOMUtil.stringToOM(omMetaFactory.getOMFactory(),
                 "<a xmlns='urn:ns1' xmlns:ns2='urn:ns2'><b 
xmlns:ns3='urn:ns3'/></a>");
-        XMLStreamReader stream = element.getXMLStreamReader();
+        XMLStreamReader stream = cache ? element.getXMLStreamReader()
+                : element.getXMLStreamReaderWithoutCaching();
         stream.next();
         assertEquals(XMLStreamReader.START_ELEMENT, stream.next());
         assertEquals("b", stream.getLocalName());
@@ -191,4 +192,12 @@
         assertEquals("urn:ns3", context.getNamespaceURI("ns3"));
         assertEquals("ns2", context.getPrefix("urn:ns2"));
     }
+    
+    public void testGetNamespaceContextWithCaching() throws Exception {
+        testGetNamespaceContext(true);
+    }
+    
+    public void testGetNamespaceContextWithoutCaching() throws Exception {
+        testGetNamespaceContext(false);
+    }
 }

Modified: 
webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DOMStAXWrapper.java
URL: 
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DOMStAXWrapper.java?rev=753639&r1=753638&r2=753639&view=diff
==============================================================================
--- 
webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DOMStAXWrapper.java
 (original)
+++ 
webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DOMStAXWrapper.java
 Sat Mar 14 11:42:33 2009
@@ -1028,6 +1028,9 @@
      * @return Returns NamespaceContext.
      */
     public NamespaceContext getNamespaceContext() {
+        if (state==SWITCHED){
+            return parser.getNamespaceContext();
+        }
         return new NamespaceContextImpl(getAllNamespaces(lastNode));
     }
 


Reply via email to