You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java 11环境下Wildfly 23启动报javax.net.ssl相关异常问题咨询

报错原因排查
  • 你贴出的第一条包含AES/GCM/NoPadding KeyUpdate的日志是JDK 11 TLS模块的正常调试输出,不属于程序错误,是你添加了-Djavax.net.debug=all启动参数后打印的信息,移除该参数即可不再显示该类日志。
  • 后续的javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?是真正的业务报错,核心原因是客户端使用HTTP明文协议访问了Wildfly绑定的HTTPS监听端口,常见排查方向:
    • 确认访问服务的请求地址前缀是否为https://,没有误写为http://
    • 检查Wildfly的undertow子系统配置,确认HTTP、HTTPS两个connector没有绑定到同一端口,没有出现端口冲突
    • 排查是否有运维监控、端口扫描工具使用HTTP协议探测HTTPS端口,这类非业务请求也会触发该报错,不影响正常业务HTTPS请求的处理
    • 如果确认所有客户端都使用HTTPS访问仍出现该报错,检查keystore文件是否损坏、配置的keystore密码、别名是否和实际keystore信息匹配
standalone.xml信任库配置方法

可以直接在standalone.xml中配置信任库,不需要依赖JVM启动参数,配置方式如下:
在你现有的安全域配置中新增<authentication>节点下的truststore配置即可:

<security-realm name="secRealm">
    <server-identities>
        <ssl>
            <keystore provider="${javax.net.ssl.keyStoreType}" path="${javax.net.ssl.keyStore}" keystore-password="${javax.net.ssl.keyStorePassword}" alias="testcert"/>
        </ssl>
    </server-identities>
    <!-- 新增信任库配置 -->
    <authentication>
        <truststore path="${javax.net.ssl.trustStore}" keystore-password="${javax.net.ssl.trustStorePassword}"/>
    </authentication>
</security-realm>

配置完成后确认undertow子系统中的HTTPS connector已绑定该安全域,即可生效。如果需要配置全局对外请求的SSL信任库,也可以在elytron子系统中配置全局SSL上下文实现。

内容的提问来源于stack exchange,提问作者Dev Fh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 19:36:03