2011-07-26 19 views
2

我正在使用Java进行JMS连接。我使用建立连接的命令是Java中的容错JMS URL

QueueConnectionFactory factory = 
    new com.tibco.tibjms.TibjmsQueueConnectionFactory(JMSserverUrl); 

哪里JMSServerUrl是保存我的JMS URL的varible。

现在的问题是我需要添加容错URL,即两个不同的URL。因此,任何人都可以告诉我如何在上面的代码示例中指定两个URL,以便如果第一个URL不可访问,则应尝试连接到另一个URL。

回答

0

tibco的.NET文档(我知道你使用java)建议你可以为消息连接提供逗号分隔的服务器URL列表。请记住,我没有任何真实的tibco体验,但这是处理初始连接容错的常用方式(即在建立连接并接收有关群集的信息之前,通常由连接处理故障转移之前) 。这可能值得一试。我遇到的另一个解决方案是创建虚拟IP并处理网络级别的容错。

3

将所有网址放在单个字符串中,并用逗号隔开。

new TibjmsQueueConnectionFactory("ssl://host01:20302,ssl://host02:20302"); 

注意,我是TIBCO EMS新手,但是这似乎工作,由错误,我可以得到证明...

javax.jms.JMSSecurityException: Failed to connect to any server at: 
ssl://host01:20302,ssl://host02:20302 
[Error: Can not initialize SSL client: no trusted certificates are set: 
url that returned this exception = SSL://host01:20302 ]