我有两个使用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进行合并的链接,但它们似乎并不是我想要的。任何帮助都会很棒,谢谢。
答案 0 :(得分:0)
我通过使用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。