【发布时间】:2017-12-22 11:46:54
【问题描述】:
我有以下代码:
javax.xml.transform.TransformerFactory factory = TransformerFactory.newInstance();
factory.setAttribute(XMLConstants.ACCESS_EXTERNAL_DTD, "");
javax.xml.transform.Transformer transformer = factory.newTransformer();
这正常工作。但是,我还需要在我的 pom.xml 中添加 Xalan 作为依赖项,当我这样做时,上面的代码现在会抛出一个错误:
java.lang.IllegalArgumentException: Not supported: http://javax.xml.XMLConstants/property/accessExternalDTD
我认为这与 Xalan 的 jar 中有不同的 Transformer 实现有关。如何在不更改上述代码并将 Xalan 保留为依赖项的情况下解决此冲突?
【问题讨论】:
-
为什么需要 Xalan 依赖项? Xalan 从 JDK 1.4 开始就得到认可。正常情况下不需要。
-
我正在制作一个对每个 Java XML 解析器都有单元测试的 Web 应用程序。