我有两个使用XmlBeans的XmlObjects。我想将一个XmlObject附加为另一个元素。
举个例子:
XmlObject 1:
<Object1>
<attr><attr/>
<attr><attr/>
<Object1/>
XmlObject 2:
<Object2>
<attr><attr/>
<attr><attr/>
<Object2/>
附加的XmlObject:
<Object1>
<attr><attr/>
<attr><attr/>
<Object2>
<attr><attr/>
<attr><attr/>
<Object2/>
<Object1/>
我发现了一些使用NodeLists进行合并的链接,但它们似乎并不是我想要的。任何帮助都会很棒,谢谢。
最佳答案
我通过使用DOM Documents弄清楚了。 XmlBeans自然会转换为DOM文档。从那里,您可以使用附加方法来添加子节点。添加节点后,您可以将文档解析回XmlObject。
请看下面:
XmlObject xmlObject = ...;
XmlObject xmlObject1 = ...;
Document myDoc = myXmlObject.getMyXmlObject().getDomNode().getOwnerDocument();
Node newNode = myDoc.importNode(myXmlObject2.getMyXmlObject().getDomNode(), true);
myDoc.getDocumentElement().appendChild(newNode);
XmlObject obj = XmlObject.Factory.parse(myDoc);
obj
是作为XmlObject新添加的文档。