1

I am trying to access a jms queue configured on Websphere Application Server 8. But I am getting java.lang.NoClassDefFoundError: com.ibm.ws.naming.util.CommonHelpers Exception. Can anyone suggest a solution? Does any jar file needs to be added? I have already added -

com.ibm.ws.messagingClient.jar
com.ibm.ws.sib.client_ExpeditorDRE_8.0.0.jar
com.ibm.ws.sib.client.thin.jms_8.0.0.jar
com.ibm.xml.thinclient_8.0.0.jar 

in classpath. You can find the code at How to set Context.INITIAL_CONTEXT_FACTORY? NoInitialContextException?

package com.jms.test;
import java.util.Hashtable;
import javax.jms.Queue;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
public class Demo {
public static void main(String[] args) throws NamingException {

    System.out.println("Start.....");
    Hashtable environment = new Hashtable();
    environment.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory");
    environment.put(Context.PROVIDER_URL, "iiop://localhost:2810");
    //String pUrl = System.getProperty(Context.PROVIDER_URL);
    //System.out.println("*******"+pUrl+"********");
    InitialContext ctx = new InitialContext(environment);
    Queue queue = (Queue) ctx.lookup("jms/inQueue");
    System.out.println("*** Queue is *** "+queue.toString());
}}

Exception Stack Trace -

Exception in thread "main" java.lang.NoClassDefFoundError: com.ibm.ws.naming.util.CommonHelpers
at com.ibm.websphere.naming.WsnInitialContextFactory.getInitialContext(Unknown Source)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:230)
at javax.naming.InitialContext.initializeDefaultInitCtx(InitialContext.java:313)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:343)
at javax.naming.InitialContext.internalInit(InitialContext.java:281)
at javax.naming.InitialContext.<init>(InitialContext.java:206)
at com.jms.test.Demo.main(Demo.java:16)
Caused by: java.lang.ClassNotFoundException: com.ibm.ws.naming.util.CommonHelpers
at java.net.URLClassLoader.findClass(URLClassLoader.java:434)
at java.lang.ClassLoader.loadClass(ClassLoader.java:646)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:358)
at java.lang.ClassLoader.loadClass(ClassLoader.java:612)
... 7 more
Community
  • 1
  • 1
Lizzie
  • 343
  • 2
  • 8
  • 20

1 Answers1

2

Try to add com.ibm.ws.admin.client_8.5.0.jar it is in the WebSphere\AppServer85\runtimes folder. CommonHelpers class is in that jar.

UPDATE for comment

This might be related to SSL required. Please check these two post how to disable SSL:

Gas
  • 17,601
  • 4
  • 46
  • 93
  • I am getting another exception now `Exception in thread "P=741213:O=0:CT" javax.naming.NamingException: Error getting WsnNameService properties [Root exception is org.omg.CORBA.TRANSIENT: initial and forwarded IOR inaccessible vmcid: IBM minor code: E07 completed: No]` – Lizzie Nov 13 '14 at 09:50