1

我编写了一个 Jersey REST Web 服务,部署在 Glassfish 上并使用 CLIENT-CERT 领域进行保护。现在我想从部署在同一个 Glassfish 服务器(或可能另一个服务器)上的应用程序调用它。

我可以从一个独立的 Java 类通过 SSL 成功调用该服务。但是,当我从部署在同一服务器上的代码中调用它时,我得到一个空证书链错误,即当服务器请求时客户端不提供证书。

javax.net.ssl.SSLHandshakeException: null cert chain

如果我通过设置将 Glassfish 密钥库和信任库与独立类一起使用

-Djavax.net.ssl.trustStore="C:\glassfish3\glassfish\domains\domain1\config\cacerts.jks"
-Djavax.net.ssl.trustStorePassword=changeit 
-Djavax.net.ssl.keyStore="C:\glassfish3\glassfish\domains\domain1\config\keystore.jks"
-Djavax.net.ssl.keyStorePassword=changeit

那么它仍然有效,但不是来自 Glassfish 本身。

4

0 回答 0