wood burning stoves*
The moose likes EJB and other Java EE Technologies and the fly likes Trying to write a jms client to receive as message Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of OCM Java EE 6 Enterprise Architect Exam Guide this week in the OCMJEA forum!
JavaRanch » Java Forums » Java » EJB and other Java EE Technologies
Bookmark "Trying to write a jms client to receive as message" Watch "Trying to write a jms client to receive as message" New topic
Author

Trying to write a jms client to receive as message

Anthony Smith
Ranch Hand

Joined: Sep 10, 2001
Posts: 285
I am trying to write a JMS client and this is all the known info that I have...

JNDI Context URL: tibjmsnaming://199.82.204.23:7222
JNDI Context Factory: com.tibco.tibjms.naming.TibjmsInitialContextFactory
Queue Connection Factory : QueueConnectionFactory
QueueName : ESE.LAC.MSGS
JMS Property Names:
CARRIER_OID,TRACK_TYPE,ORIGIN_COUNTRY_CODE,DEST_COUNTRY_CODE

I tried to get it started, but really do nto know what to do:


import javax.naming.*;
import javax.jms.*;

public class JMS

{

String jndiContextUrl = "tibjmsnaming://199.82.204.23:7222";
String jndiContextFactory = "com.tibco.tibjms.naming.TibjmsInitialContextFactory";
String queueConnectionFactory = "QueueConnectionFactory";
String queueName = "ESE.LAC.MSGS";
private QueueConnectionFactory qFactory;
private QueueConnection qcon;
private QueueSession qsession;
private QueueSender qsender;
private Queue queue;
private TextMessage msg;


public JMS()

{
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY, jndiContextFactor);
env.put(Context.PROVIDER_URL, jndiContextUrl);

InitialContext jndiContext = new InitialContext(env);

qFactory = (QueueConnectionFactory) jndiContext.lookup(queueConnectionFactory);

queue = (Queue) jndiContext.lookup(queueName);

qreceiver = qsession.createReceiver(queue);
qreceiver.setMessageListener(this);

qcon.start();

}
}
Brian Tinnel
Ranch Hand

Joined: Aug 25, 2003
Posts: 69
A couple of things I noticed:

You never created a qsession. So I would expect the line that has qreceiver = qsession.createReceiver(queue) would get an NPE. For just playing around a simple session is probably okay. Like:


By calling setMessageListener(this) you are saying that the JMS class is a message listener, but it does not implement the MessageListener interface. Do that and you will need to write an onMessage method that will be called when a message arrives.

Hopefully, that is enough info to get you going.
 
 
subject: Trying to write a jms client to receive as message