You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xmlbeans.apache.org by "Raman Gupta (JIRA)" <xm...@xml.apache.org> on 2005/12/09 19:43:18 UTC

[jira] Commented: (XMLBEANS-200) XmlObject node copy yields IllegalArgumentException: DocumentWrapper#wrap in Saxon on further XPath executions of copied node

    [ http://issues.apache.org/jira/browse/XMLBEANS-200?page=comments#action_12359923 ] 

Raman Gupta commented on XMLBEANS-200:
--------------------------------------

This problem also occurs if you use an XmlCursor to create an XmlObject (as opposed to using the parse method).  Here is some sample code:

        XmlObject xmlInput = XmlObject.Factory.newInstance();
        XmlCursor cursor = xmlInput.newCursor();
        cursor.toNextToken();
        cursor.push();
        cursor.beginElement("E1005");
        cursor.insertElementWithText("E1", null);
        cursor.pop();
        cursor.dispose();

        XmlObject[] xmlResult = xmlInput.execQuery(expression);    // throws exception given in description

The only workaround I have for now is to do:

        xmlInput = XmlObject.Factory.parse(xmlInput.getDomNode());

before calling execQuery.

> XmlObject node copy yields IllegalArgumentException: DocumentWrapper#wrap in Saxon on further XPath executions of copied node
> -----------------------------------------------------------------------------------------------------------------------------
>
>          Key: XMLBEANS-200
>          URL: http://issues.apache.org/jira/browse/XMLBEANS-200
>      Project: XMLBeans
>         Type: Bug
>   Components: XPath
>     Versions: Version 2
>  Environment: Windows XP, Saxon 8.1, Java 1.4_05, XmlBeans 2.0
>     Reporter: Brian Rafalowski
>     Assignee: Yana Kadiyska
>      Fix For: Version 2
>  Attachments: XPathCopy.zip
>
> A selectPath(Query)  returns a child node of the wrapped document.  The child node is then copied with the XmlObject.copy() method. My application requires a copy of the child node since it will be passed into a Threaded application which has no need to modify the resulting XML. The Child node has further children that I would like to use XPath queries to pull the desired node. However, when I issue a select path on the returned child node, I get the following error:
> java.lang.IllegalArgumentException: DocumentWrapper#wrap: supplied node does not belong to the wrapped DOM document
> I do not wish to construct a new XML document for the Child (and its children) to pass into my application. I just need the fragment to query, as the XML just represents "ini" type information.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@xmlbeans.apache.org
For additional commands, e-mail: dev-help@xmlbeans.apache.org