【发布时间】:2010-12-03 11:18:43
【问题描述】:
我正在使用 Glassfish JMS。
我可以将消息添加到队列中。 我可以使用 QueueBrowser 对象查看消息。 但是 MessageConsumer(也不是 QueueReceiver)不能接收任何消息并返回 null。 消息过期设置为0,我记得打开连接。
有什么想法吗?
代码如下:
Session session = null;
Connection conn = null;
try
{
InitialContext jndi = new InitialContext();
ConnectionFactory qFactory = (ConnectionFactory)jndi.
lookup("myConnectionFactory");
conn = qFactory.createConnection();
conn.start();
Queue queue = (Queue)jndi.lookup("myQueueName");
session = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
QueueReceiver mc = ((QueueSession)session).createReceiver(queue);
Object m = mc.receive(2000);
//m is NULL!
QueueBrowser browser = session.createBrowser(queue);
for(Enumeration e = browser.getEnumeration(); e.hasMoreElements(); )
{
//there are many messages here...
}
【问题讨论】:
-
任何代码要显示?它可能会帮助您了解...