0

如何以编程方式从“mq.sys.dmq”读取消息。我使用 Glassfish 3.1.2.2

当我尝试:

InitialContext ctx = new InitialContext();
Queue queue = (Queue) ctx.lookup("mq.sys.dmq");
QueueConnectionFactory connFactory = (QueueConnectionFactory) ctx.lookup("jms/ConnectionFactory");
QueueConnection queueConn = connFactory.createQueueConnection();
QueueSession queueSession = queueConn.createQueueSession(false,
             Session.AUTO_ACKNOWLEDGE);
QueueReceiver queueReceiver = queueSession.createReceiver(queue);

我收到:

javax.naming.NamingException:查找“mq.sys.dmq”失败

4

1 回答 1

2

您必须在 Glassfish 管理 GUI 中创建队列。

转到JMS Resources-> Destination Resources

mq.sys.dmq使用asPhysical Destination Namejavax.jms.queueas创建一个新条目Resource type

于 2013-02-21T15:49:46.643 回答