The following code is a simple JMS Sender that works fine when executed in command prompt locally
i.e in the system where the server is installed. However the same code doesnt work when executed from
inside a jsp in the server itself.
Context jndiContext = null;
QueueConnectionFactory queueConnectionFactory = null;
QueueConnection queueConnection = null;
QueueSession queueSession = null;
Queue queue = null;
QueueSender queueSender = null;
ObjectMessagemessage = null;
String queueName = "jms/PaymentsQueue_Queue";
java.util.Hashtable env = new java.util.Hashtable();
env.put(javax.naming.Context.INITIAL_CONTEXT_FACTORY, "com.sun.enterprise.naming.SerialInitContextFactory");
env.put(javax.naming.Context.PROVIDER_URL,"orb://cspl-pc-75:1050");
env.put(javax.naming.Context.SECURITY_PRINCIPAL, "");
env.put(javax.naming.Context.SECURITY_CREDENTIALS, "");
jndiContext = new InitialContext(env);
queueConnectionFactory = (QueueConnectionFactory)jndiContext.lookup("jms/QueueConnectionFactory");
queue = (Queue) jndiContext.lookup(queueName);
queueConnection = queueConnectionFactory.createQueueConnection();
queueSession = queueConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
queueConnection.start();
queueSender = queueSession.createSender(queue);
message = queueSession.createObjectMessage();
System.out.println("Sending message");
queueSender.send(message);
queueConnection.close();
I tried using iiop and rmi as well. It would give the same InvocationException. I am using j2sdkee1.4. I think something is wrong with the jms settings in the server. Please suggest me if u have already come across a problem similar to this.