This week's giveaway is in the Android forum.
We're giving away four copies of Android Security Essentials Live Lessons and have Godfrey Nolan on-line!
See this thread for details.
The moose likes EJB and other Java EE Technologies and the fly likes Naming Context problem Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Android Security Essentials Live Lessons this week in the Android forum!
JavaRanch » Java Forums » Java » EJB and other Java EE Technologies
Bookmark "Naming Context problem" Watch "Naming Context problem" New topic

Naming Context problem

A Kumar
Ranch Hand

Joined: Jul 04, 2004
Posts: 979
Hi all,

I am trying to develop a simple session bean and deploy in jbos..but am getting an error while running the client..I was able to deppoy the EJB on the server but the client is giving errors....Can u please tell me Where i have to correct??

The Client


import javax.naming.InitialContext;
import javax.rmi.PortableRemoteObject;


/** This simple application tests the 'Interest' Enterprise JavaBean which is
implemented in the package ''. For this to work, the
Bean must be deployed on an EJB server.
class InterestClient
/** This method does all the work. It creates an instance of the Interest EJB on
the EJB server, and calls its `calculateCompoundInterest()' method, then prints
the result of the calculation.
public static void main(String[] args)
// Enclosing the whole process in a single `try' block is not an ideal way
// to do exception handling, but I don't want to clutter the program up
// with catch blocks
System.out.println("Inside the program");

System.out.println("before the context");
// Get a naming context
InitialContext jndiContext = new InitialContext();
System.out.println("Got context");

// Get a reference to the Interest Bean
Object ref = jndiContext.lookup("interest/Interest");
System.out.println("Got reference");

// Get a reference from this to the Bean's Home interface
InterestHome home = (InterestHome)
PortableRemoteObject.narrow(ref, InterestHome.class);

// Create an Interest object from the Home interface
Interest interest = home.create();

// call the calculateCompoundInterest() method to do the calculation
System.out.println("Interest on 1000 units, at 10% per period, compounded over 2 periods is:");
System.out.println(interest.calculateCompoundInterest(1000, 0.10, 2));
catch(Exception e)


End of Client code

The file has the following entries...

java.naming.factory.url.pkgs=org.jboss.naming rg.jnp.interfaces


The error is ...

Error is

Inside the program
before the context
Exception in thread "main" java.lang.NoClassDefFoundError: org/jboss/logging/Logger
at org.jnp.interfaces.NamingContext.<clinit>(
at org.jnp.interfaces.NamingContextFactory.getInitialContext(NamingContextFactory
at javax.naming.spi.NamingManager.getInitialContext(
at javax.naming.InitialContext.getDefaultInitCtx(
at javax.naming.InitialContext.init(
at javax.naming.InitialContext.<init>(

I ahve added the properites file to the classpath and run..the class ..

but still...

Appreciate all ur replies...

A Kumar
Arto Pastinen
Ranch Hand

Joined: Dec 13, 2002
Posts: 79
Add jboss/client/jbossall-client.jar to you client classpath.
A Kumar
Ranch Hand

Joined: Jul 04, 2004
Posts: 979
Thanks buddy....It worked fine...i got the rezult..

A Kumar
Ranch Hand

Joined: Jul 04, 2004
Posts: 979
Instead of using a .properties file i tried to supply them

in the source code and it worked..

i made the change in the above code of the client file..

//Add a hashtable

Hashtable props = new Hashtable();
props.put(Context.PROVIDER_URL, "jnp://localhost:1099");
//props.put(Context.URL_PKG_PREFIXES,"org.jboss.naming rg.jnp.interfaces");

System.out.println("Inside the program");

System.out.println("before the context");
// Get a naming context
InitialContext jndiContext =new InitialContext(props);




I agree. Here's the link:
subject: Naming Context problem
Similar Threads
getting EJB over JNDI context
error on running an ejb application
Compilation Problems with EJBHome in Client.