Я использую Glassfish JMS.
Я могу добавлять сообщения в очередь.
Я могу видеть сообщения, используя объект QueueBrowser.
Однако MessageConsumer (или QueueReceiver) не может получить любое сообщение и вернуть ноль.
Срок действия сообщения установлен на 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...
}