如何检查使用Java API的JMS服务器上是否存在队列?我现在不想向队列发送或接收任何数据,只需确认队列是否存在即可。此外,队列可能为空。如何使用Java验证是否存在JMS队列?
这是我的代码示例。为了简单起见,我已经删除了错误处理。
Connection connection = null;
Session session = null;
connection = factory.createConnection();
session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
//I was hoping this next line would throw an exception if the queue does not exist
Queue queue = session.createQueue(queueName);
我的JMS服务器是TIBCO EMS。我希望能够在5-7版本上运行的解决方案。
解决方案
我也跟着在接受答案的建议,但创造了一个浏览器。下面的代码行抛出异常的期望:
QueueBrowser browser = session.createBrowser(queue);
JMS没有定义管理接口或模型;因此对此的回答取决于您的JMS提供者。你在使用哪一个? – Calanais 2014-10-08 15:46:49