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