Does anyone know why queue browser is only able to pick up first 300 messages?
When I use consumer it seems to work better but of course it also removes the messages. On Thu, Jan 24, 2013 at 5:47 PM, Mohit Anchlia <[email protected]>wrote: > I have around 1K messages in the queue. When I run my queue browser > "browser.getEnumeration();" gets only 270-300 messages at one time. > > connection = connectionFactory.createConnection(); > connection.start(); > session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); > Queue fq = session.createQueue(from); > QueueBrowser browser = session.createBrowser(fq); > // to > toConnection = toConnectionFactory.createConnection(); > toConnection.start(); > toSession = toConnection.createSession(false, > Session.AUTO_ACKNOWLEDGE); > Queue tq = toSession.createQueue(to); > toProducer = toSession.createProducer(tq); > Enumeration<Message> e = browser.getEnumeration(); > Message message = null; > TextMessage textMessage = null; > String selector = null; > int i = 0; > while (e.hasMoreElements()) { > log.info("Processing " + i); > > message = e.nextElement(); > // final String messageBody = ((TextMessage) message).getText(); > // textMessage = session.createTextMessage(messageBody); > toProducer.send(message); > log.info(message.getJMSMessageID()); > /* > * // log.info("Message: " + messageBody); try { selector = > * "JMSMessageID = '" + message.getJMSMessageID() + "'"; // > * consumer = session.createConsumer(fq, selector); // > * consumer.receive(); } finally { // consumer.close(); } > */ > i++; > } >
