【发布时间】:2020-01-06 15:57:26
【问题描述】:
我正在尝试在 Eclipse Apache Tomcat 中启动 Web 应用程序,但失败并在 gist 中发布了以下错误。
Caused by: java.lang.RuntimeException: Provider for class javax.xml.parsers.SAXParserFactory cannot be created
at javax.xml.parsers.FactoryFinder.findServiceProvider(FactoryFinder.java:308)
... 38 more
Caused by: java.util.ServiceConfigurationError: javax.xml.parsers.SAXParserFactory: Provider org.apache.xerces.jaxp.SAXParserFactoryImpl not found
at java.util.ServiceLoader.fail(ServiceLoader.java:239)
下面是xml相关的pom文件依赖,我有
<dependency>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
<version>2.4.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>ibm</groupId>
<artifactId>xml4j</artifactId>
<version>2.0.15</version>
</dependency>
我尝试了各种解决方案,将 xerces jar 粘贴到 jre/lib/endorsed 文件夹,将其标记为已提供,引用目标目录无效。
【问题讨论】:
-
尝试使用 apache xerces 依赖:mvnrepository.com/artifact/org.apache.xerces/xercesImpl/2.9.1
-
@JorgeCampos,我正在迁移旧项目,最新的 jar 解决了这个问题。我会接受它作为答案
-
使用 apache 中的 xerces jar 而不是 wso2,mvnrepository.com/artifact/xerces/xercesImpl/2.9.1
-
作为答案添加。