Lizzie
Lizzie

Reputation: 351

java.lang.NoClassDefFoundError: com.ibm.ws.naming.util.CommonHelpers

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

Upvotes: 1

Views: 7968

Answers (1)

Gas
Gas

Reputation: 18050

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:

Upvotes: 2

Related Questions