我正在尝试作为消息接收器连接到我们的ActiveMQ服务器。首先,我尝试连接到本地ActiveMQ,我将其下载用于测试目的。确实有效,该连接可用于以下情况:

private static String url = ActiveMQConnection.DEFAULT_BROKER_URL;

ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(url);
Connection connection = connectionFactory.createConnection();
connection.start();


现在,我需要连接到服务器上的ActiveMQ,并且需要使用SSL。我已经将.crt密钥导入Java(cacert),但是不知道如何进行。我想我必须将url更改为以下内容:

url = "failover://ssl://<servername>:61617";


但是,仅此一项是行不通的。有没有人提示您如何建立连接?先感谢您!

最佳答案

找到了解决方案!

ActiveMQSslConnectionFactory connectionFactory = new ActiveMQSslConnectionFactory(url);
connectionFactory.setTrustStore("truststore.ts");
connectionFactory.setTrustStorePassword("password");

Connection connection = connectionFactory.createConnection();
connection.start();


您只需使用CA创建信任库。

10-06 14:13