org.w3c.dom.document#importnode()不包括新添加的属性

c0vxltue  于 2021-08-20  发布在  Java
关注(0)|答案(0)|浏览(131)

我正在尝试为现有文档的子树创建一个新的org.w3c.dom.document。我的问题是,解析后添加到原始文档中的属性不会导入到文档中。

elementOfCurrentDocument.setAttribute("newAttribute", "value");

final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(JXDocumentBuilderFactory.class.getName(), null)
factory.setNamespaceAware(true);
factory.setValidating(true);
factory.setIgnoringComments(true);
factory.setIgnoringElementContentWhitespace(true);

final var builder = factory.newDocumentBuilder();
final var newDocument = builder.newDocument();

final var importedNode = newDocument.importNode(elementOfCurrentDocument, true);
newDocument.appendChild(importedNode);
newDocument.getDocumentElement().getAttribute("newAttribute"); // returns ""

我正在使用oracle xmlparserv2实现。
当我在添加属性后第一次将文档转换为字符串,然后再将其转换回文档时,importnode()可以正常工作。我错过了什么?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题