java.xml XMLConstants.FEATURE_SECURE_PROCESSING 无法解析或不是字段
Posted
技术标签:
【中文标题】java.xml XMLConstants.FEATURE_SECURE_PROCESSING 无法解析或不是字段【英文标题】:java.xml XMLConstants.FEATURE_SECURE_PROCESSING cannot resolve or not is a field 【发布时间】:2017-12-07 17:44:22 【问题描述】:我使用 Eclipse、Spring MVC 和 Maven。Java 版本是 1.6
我有以下方法
public static DocumentBuilder getBuilder(ServletContext servletContext)
DocumentBuilderFactory factory =DocumentBuilderFactory.newInstance();
factory.setValidating(true);
DocumentBuilder builder = null;
try
factory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
builder = factory.newDocumentBuilder();
我在eclipse编辑器中出现错误:
factory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING,
错误是
FEATURE_SECURE_PROCESSING cannot be resolved or not is a field
在编辑器 Eclipse 中我看到:
Maven 依赖项是:
为什么我没有变量
XMLConstants.FEATURE_SECURE_PROCESSING ?
【问题讨论】:
【参考方案1】:您的类路径中的一个库包含旧版本的javax.xml.XMLConstants
。您需要找到并删除该库。尝试使用Ctrl + Shift + T
或在Eclipse 中选择Navigate -> Open Type
来查找有问题的jar 文件。
此外,您至少有两个库,Xerces 和 Xalan,它们不是必需的,可以删除,因为它们与 JDK 捆绑在一起。
【讨论】:
这对我一点帮助都没有 在我的例子中,它是与 Apache POI 库捆绑在一起的 STAX API。使用@Ale 的解决方案。此解决方案应该有助于排除 pom.xml 中的 jar。谢谢!【参考方案2】:我不知道是否有你的情况,但我解决了在我的 Java 项目构建路径中配置源文件夹的问题,遵循以下步骤:
-
右键单击项目并选择“属性”
从左侧菜单中选择“Java Build Path”
选择“订购和导出”标签
将“JRE 系统库”移到顶部并应用
这样,Java 库在其他库之前使用。
【讨论】:
以上是关于java.xml XMLConstants.FEATURE_SECURE_PROCESSING 无法解析或不是字段的主要内容,如果未能解决你的问题,请参考以下文章
Java xml出现错误 javax.xml.transform.TransformerException: java.lang.NullPointerException