You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by di...@apache.org on 2005/07/09 20:12:11 UTC

svn commit: r209962 - in /webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om: impl/llom/OMDocument.java impl/llom/builder/StAXOMBuilder.java xpath/DocumentNavigator.java

Author: dims
Date: Sat Jul  9 11:12:10 2005
New Revision: 209962

URL: http://svn.apache.org/viewcvs?rev=209962&view=rev
Log:
Get xpath ("//*") to work.


Modified:
    webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/OMDocument.java
    webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/builder/StAXOMBuilder.java
    webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/xpath/DocumentNavigator.java

Modified: webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/OMDocument.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/OMDocument.java?rev=209962&r1=209961&r2=209962&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/OMDocument.java (original)
+++ webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/OMDocument.java Sat Jul  9 11:12:10 2005
@@ -76,7 +76,6 @@
         while (rootElement == null) {
             parserWrapper.next();
         }
-        rootElement.setParent(this);
         return rootElement;
     }
 
@@ -113,7 +112,8 @@
      * This will force the parser to proceed, if parser has not yet finished with the XML input
      */
     public void buildNext() {
-        parserWrapper.next();
+        if(!parserWrapper.isCompleted())
+            parserWrapper.next();
     }
 
     /**

Modified: webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/builder/StAXOMBuilder.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/builder/StAXOMBuilder.java?rev=209962&r1=209961&r2=209962&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/builder/StAXOMBuilder.java (original)
+++ webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/builder/StAXOMBuilder.java Sat Jul  9 11:12:10 2005
@@ -67,6 +67,7 @@
         if (lastNode == null) {
             node = omfactory.createOMElement(elementName, null, null, this);
             document.setRootElement(node);
+            document.addChild(node);
         } else if (lastNode.isComplete()) {
             node = omfactory.createOMElement(elementName, null,
                     lastNode.getParent(), this);

Modified: webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/xpath/DocumentNavigator.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/xpath/DocumentNavigator.java?rev=209962&r1=209961&r2=209962&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/xpath/DocumentNavigator.java (original)
+++ webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/xpath/DocumentNavigator.java Sat Jul  9 11:12:10 2005
@@ -5,6 +5,7 @@
 import org.apache.axis2.om.OMNamespace;
 import org.apache.axis2.om.OMNode;
 import org.apache.axis2.om.OMText;
+import org.apache.axis2.om.OMContainer;
 import org.apache.axis2.om.impl.llom.OMDocument;
 import org.apache.axis2.om.impl.llom.builder.StAXOMBuilder;
 import org.jaxen.BaseXPath;
@@ -33,7 +34,7 @@
      * @see XPath
      */
     public XPath parseXPath(String xpath) throws SAXPathException {
-        return (XPath) new BaseXPath(xpath, this);
+        return new BaseXPath(xpath, this);
     }
 
     /**
@@ -286,8 +287,8 @@
      *                                  not supported by this object model
      */
     public Iterator getChildAxisIterator(Object contextNode) throws UnsupportedAxisException {
-        if (isElement(contextNode)) {
-            return ((OMElement) contextNode).getChildren();
+        if (contextNode instanceof OMContainer) {
+            return ((OMContainer) contextNode).getChildren();
         }
         return JaxenConstants.EMPTY_ITERATOR;
     }
@@ -578,6 +579,8 @@
      * @see #isElement
      */
     public Object getParentNode(Object contextNode) throws UnsupportedAxisException {
+        if(contextNode instanceof OMDocument)
+            return null;
         return getDocumentNode(((OMNode) contextNode).getParent());
     }
 }