2013-02-21 84 views
0

如何以編程方式從「mq.sys.dmq」讀取消息。 我用Glassfish的3.1.2.2以編程方式讀取DMQ

當我嘗試:

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: Lookup failed for 'mq.sys.dmq' 

回答

2

您在GlassFish管理GUI創建隊列。

轉到JMS Resources - >Destination Resources

創建mq.sys.dmq作爲Physical Destination Namejavax.jms.queueResource type

+0

它工作的新條目。謝謝! – DSmelanskij 2013-02-21 16:27:48

+0

對於自動部署或在集成測試(Arquillian)中使用,它可以很好地將信息放在glassfish-resources-xml中的「創建」隊列中。剛剛測試過它。 – 2013-06-12 09:20:41

相關問題