GeeCON Prague 2014*
The moose likes Websphere and the fly likes MQSeries programming with Java API and JMS API Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


JavaRanch » Java Forums » Products » Websphere
Bookmark "MQSeries programming with Java API and JMS API" Watch "MQSeries programming with Java API and JMS API" New topic
Author

MQSeries programming with Java API and JMS API

Thirumaran Somasundaram
Greenhorn

Joined: Oct 29, 2002
Posts: 8
How do we read(but not getting the message from) XML messages from a MQ queue which is point to point,asynchronous communication and also store them in an unix file system?
The purpose of reading a XML Message is to archive the data into an unix file.
Please answer me soon
It's very important and urgent
[ August 20, 2003: Message edited by: Thirumaran Somasundaram ]
S SG
Greenhorn

Joined: Sep 03, 2003
Posts: 5
You can user the following class.
javax.jms.QueueBrowser
S SG
Greenhorn

Joined: Sep 03, 2003
Posts: 5
public Message[] getMessages(String qLookup) throws NamingException, JMSException {
Queue ioQueue = null;
javax.jms.QueueBrowser queueBrowser = null;
Enumeration enum = null;
Message[] msgs= null;
try{
connect();
ioQueue = getQueueFromJNDI(qLookup);

// Create a QueueReceiver in the same way
//System.out.println( "Creating a Queue Browser");
if(getMsgSelector()==null){
queueBrowser = jmssession.createBrowser(ioQueue);
}else{
queueBrowser = jmssession.createBrowser(ioQueue,getMsgSelector());
}
//System.out.println("Starting the Connection");
connection.start();

//System.out.println( "Reading the message back again" );
enum = queueBrowser.getEnumeration();
//count the number of messages on the Queue
int count =0;
while(enum.hasMoreElements()){
enum.nextElement();
count++;
}
//put messages in an array.
enum = queueBrowser.getEnumeration();
int index = 0;
msgs = new Message[count];
while(enum.hasMoreElements()){
Object msg = enum.nextElement();
msgs[index]=(Message)msg;
index++;
//System.out.print(msg);
}
}catch(JMSException e){
logger.severe(cxom.util.Common.getStackTrace(e));
logger.severe(e.toString());
throw e;
}finally {
try {
if (connection != null) {
connection.stop();
}
}catch(Exception e){/**/}
try {
if (queueBrowser != null) {
queueBrowser.close();
}
}catch(JMSException e){/**/}

disconnect();
}
return msgs;
}
 
GeeCON Prague 2014
 
subject: MQSeries programming with Java API and JMS API