javax.xml.parsers.FactoryConfigurationError 运行 JBoss AS 7.1 和 Java 7 更新 171
Posted
技术标签:
【中文标题】javax.xml.parsers.FactoryConfigurationError 运行 JBoss AS 7.1 和 Java 7 更新 171【英文标题】:javax.xml.parsers.FactoryConfigurationError running JBoss AS 7.1 with Java 7 update 171 【发布时间】:2018-07-02 09:32:31 【问题描述】:将 Java 从 7u161 升级到 7u171 会阻止 JBoss AS 7.1.1.Final 启动。我知道 JBoss AS 7.1.1 是 EOL 但出于兼容性原因,我们仍然需要运行这个版本。
在启动的早期,一些 JBoss 方法中发生 NullPointerException。以下是例外:
Exception in thread "main" javax.xml.parsers.FactoryConfigurationError: Provider __redirected.__SAXParserFactory could not be instantiated: java.lang.NullPointerException
[...]
Caused by: java.lang.NullPointerException
at __redirected.__RedirectedUtils.loadProvider(__RedirectedUtils.java:94)
full stack 在这里。
【问题讨论】:
我测试了 Oracle JDK 7 Update 171(补丁 27217226)和 Oracle JDK 7 Update 171 b31(补丁 27334355),结果相同。 Oracle 社区也有人问过这个问题:community.oracle.com/message/14679602 【参考方案1】:您可以尝试将jboss-modules.jar
(在jboss-as 二进制发行版的根文件夹中找到)升级到1.1.5.GA
吗?
jboss-7.1.1.Final
附带的 jboss-modules 版本是 1.1.1.GA
,它在初始化顺序和多重初始化方面存在一些问题,这可能会导致问题。
【讨论】:
用jboss-modules-1.1.5.GA.jar 替换原来的 jboss-modules.jar (1.1.1.GA) 解决了这个问题。谢谢。 从这里(java2s.com/Code/Jar/j/Downloadjbossmodules115gajar.htm)下载jar文件并重命名为jboss-module.jar并替换原来的jar。【参考方案2】:环境如下: JBoss:JBoss AS 7.1.1.Final, 操作系统:Ubuntu 16.04.1,并且, 爪哇:1.8.0_181。
我已经下载了jboss-modules-1.1.5.GA.jar 并替换为 JBOSS_HOME 的 jboss-modules.jar。它对我有用。
【讨论】:
【参考方案3】:我在生产服务器上遇到了同样的问题
我的环境:-
JBoss AS 7.1.1.Final
Red Hat Enterprise Linux 6.5
java: 1.7.0_181
即使我有 jboss-modules.jar,它默认出现在 JBoss AS 7.1.1.Final 中, 于是我下载了 jboss-modules-1.1.5.GA.jar ,将其重命名为 jboss-modules.jar 并将其替换为原始的 jboss-modules.jar。
【讨论】:
【参考方案4】:您确定您使用的是 jdk 1.7?
当您尝试使用 java 版本 > 1.7 启动 Jboss, 尝试检查您的 JDK 安装文件夹时,可能会发生此问题。
【讨论】:
看准了!也必须检查环境变量中的 JAVA_HOME。OpenJDK 1.7.0_261
也造成了这种情况。以上是关于javax.xml.parsers.FactoryConfigurationError 运行 JBoss AS 7.1 和 Java 7 更新 171的主要内容,如果未能解决你的问题,请参考以下文章