我一直在开发一个 java activemq 客户端软件来连接到一个 ssl 驱动的代理,但是通过以下方式以编程方式设置信任库:
// Configure the secure connection factory.
ActiveMQSslConnectionFactory connectionFactory = new ActiveMQSslConnectionFactory(url);
connectionFactory.setTrustStore("/conf/client.ts"); // truststore which includes the certificate of the broaker
connectionFactory.setTrustStorePassword("password");
如此处所示。然而,那抛出一个
javax.net.ssl.SSLHandshakeException:sun.security.validator.ValidatorException:PKIX 路径构建失败错误
遵循 QA Resolving javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed 错误的响应?通过将代理证书添加到我的 java 安装的受信任证书中,我能够成功地将客户端连接到代理。
但是,在这种情况下,我不希望每个使用应用程序的用户都在他们的 java 发行版中导入证书,而是希望客户端应用程序已经携带了代理证书。我如何最好使用 ActiveMQSslConnectionFactory 类来做到这一点?