[ http://issues.apache.org/jira/browse/XMLBEANS-301?page=all ]
Cezar Andrei resolved XMLBEANS-301.
-----------------------------------
Resolution: Won't Fix
moveXmlContents() is designed to move only the content of the current element.
For moving the element use moveXml() method.
> Missing top-level element when copy/moveXmlContents
> ---------------------------------------------------
>
> Key: XMLBEANS-301
> URL: http://issues.apache.org/jira/browse/XMLBEANS-301
> Project: XMLBeans
> Issue Type: Bug
> Components: Cursor
> Affects Versions: Version 2.2.1
> Environment: JDK1.5
> Reporter: Hacking Bear
>
> When using cursor to copy/move one XmlObject into another, the top-level
> element is missing. One has to wrap the bean into another bean before
> move/copy to target.
> As experiment at point (A) and (B) below, it seems that XMLBean inserts the
> child after the cursor, rather than at the cursor, so I have to wrp it in a
> dummy doc or parent element. This also seems contradicting to the
> tutorial/document. The expected output is
> ...<soap:body><Request ...><AttributeQuery ...
> public class SOAPXBeanOutputTest {
> public static void main(String[] args) throws Exception {
> RequestType request = RequestType.Factory.newInstance();
> request.setIssueInstant(Calendar.getInstance());
> request.setRequestID ("REQ123");
> AttributeQueryType query = request.addNewAttributeQuery();
> SubjectType subject = SubjectType.Factory.newInstance();
> NameIdentifierType nameId = subject.addNewNameIdentifier ();
> nameId.setStringValue("NAME123");
> query.setSubject((SubjectType)subject.copy());
>
> EnvelopeDocument soapDoc = EnvelopeDocument.Factory.newInstance();
> Envelope soapEnv = soapDoc.addNewEnvelope();
> Body soapBody = soapEnv.addNewBody();
>
> XmlCursor cursor = soapBody.newCursor();
> cursor.toNextToken();
> // (A) if not wrapping in dummy doc/element, results in output
> ...<soapenv:Body><urn:AttributeQuery...
> RequestDocument dummyDoc = RequestDocument.Factory.newInstance();
> dummyDoc.setRequest(request);
> XmlCursor reqcursor = dummyDoc.newCursor(); // typs = STARTDOC
> //reqcursor.toFirstChild(); // (B) this results in output
> ...<soapenv:Body><urn:AttributeQuery...
> reqcursor.moveXmlContents(cursor);
>
> reqcursor.dispose();
> cursor.dispose();
> soapDoc.save(System.out);
> }
> }
--
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]