java - 使用 XSL 修改现有 DOM

标签 java xml xslt jaxp

我正在使用一个框架,其中 XML DOM(org.w3c.dom.Document 的实例)附加了监听器,这基本上可以帮助它跟踪创建后对其所做的所有更改(它在内部用于生成增量)。 现在我的要求是使用 XSL 修改这个 DOM,该 DOM 将从外部传递给我。 我尝试使用 Transformer 但它总是创建新的 DOM,这并不能解决我的目的。 我基本上想基于一些 XSL 转换现有的 DOM 。 有什么建议吗?

最佳答案

XSLT 接受输入树并将其转换为新的结果树,我认为您不能按照您想要的方式使用 XSLT,即直接操作现有树,而不先创建新树。

因此,如果您确实想要操作现有的 DOM 文档对象,请使用 W3C DOM API 以及 createElement、appendChild、replaceChild、setAttribute 等方法,如果您无法承担创建新树的费用,那么 XSLT 就没用。

关于java - 使用 XSL 修改现有 DOM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17741133/

相关文章:

java - 从数组打印信息,不使用重复值

xml - 使用带有命名空间的 Freemarker DocumentModel

java - 如何修复空指针异常? (Android SDK、Eclipse)

XSLT:在 html 标记内添加文本

html - 目录 XSL

java - 从 java 中的文件读取但输出跳过每隔一行

Java没有其他类的响应

java通过命令获取批处理文件命令的输出

sql-server - 将 XML 从一种格式转换为另一种格式

xml - 使用 XSL 对 XML 文件进行哈希处理