我无法在 JBOSS EAP 7.1 中从 EAR 或 WAR 设置系统属性

Posted

技术标签:

【中文标题】我无法在 JBOSS EAP 7.1 中从 EAR 或 WAR 设置系统属性【英文标题】:I am not able to set System Properties from EAR or WAR in JBOSS EAP 7.1 【发布时间】:2020-11-29 21:18:50 【问题描述】:

我需要使用 System.setProperty() 方法在 EAR 或 WAR 中设置 trustStore 和 trustStorePassword ,在我打印 System.getProperties() 并在 javax.net.ssl.trustStore 和 javax 的日志中找到的同一行上.net.ssl.trustStorePassword 被设置为需要设置的确切位置和密码,但仍然无法验证来自 trustStore 的服务器证书。

收到此错误:

sun.security.validator.ValidatorException:PKIX 路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到到请求目标的有效证书路径

但是如果我从启动脚本中设置这两个参数,即

$JBOSS_HOME/bin/standalone.sh -c Standalone-full-ha.xml -Djavax.net.debug=none -Djavax.net.ssl.trustStore=truststore.jks 的路径 -Djavax.net.ssl.trustStorePassword =密码

能够成功验证服务器的证书。

JBOSS EAP 7.1 对从部署设置系统属性有任何限制吗?或者有没有我遗漏的配置?

【问题讨论】:

【参考方案1】:

证书的系统属性是在 JVM 启动时读取的,因此在部署中设置它们为时已晚。

【讨论】:

以上是关于我无法在 JBOSS EAP 7.1 中从 EAR 或 WAR 设置系统属性的主要内容,如果未能解决你的问题,请参考以下文章

JBoss EAP 7.1 部署失败的集成器:未找到提供程序

从 JBoss AS 7.1 迁移到 JBoss EAP 7.3.0

部署到 jboss EAP 7.1 时,此 URL 不支持 HTTP Post 方法

JBoss EAP 6.4 -> 7.1 使用休眠 4 而不是默认休眠 5

在 JBOSS EAP 7.1 中,如何将 EJB 和 undertow 的统计启用设置为 True?

如何在 JBOSS EAP 7.1 中设置管理员用户(以便能够在紧急情况下通过 GUI 检查服务器?)?