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)); }