我创建了一个方法,它分别采用Node,Document和String三种类型的参数。该方法创建一个Element类型并将其附加到节点。
public Node populateProcessNodeRecursively (Node node, Document doc, String name){
if (name.equals("WFD.Stencils.WF_START")){
Element startEventNode = createNewNodeElement (doc, "bpmn2:startEvent");
startEventNode.setAttribute("id", arrayOfNodesIds.get(ind));
node.appendChild(startEventNode);
}
return node;
}
createNewNodeElement
方法的实现是:
public static Element createNewNodeElement (Document doc, String tagName){
Element theNodeElement = doc.createElement(tagName);
return theNodeElement;
}
但我得到以下例外:
线程“main”
org.w3c.dom.DOMException
中的异常:WRONG_DOCUMENT_ERR:节点用于与创建节点不同的文档中。
当我尝试将新创建的元素追加到节点时。
当我尝试将另一个元素附加到我的文档时,我解决了同样的问题 使用importNode的现有文档,但我不知道如何解决这个问题,因为我在同一个文档中,我不是从另一个文档中检索节点