geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ranjan, Rakesh \(Cognizant\)" <Rakesh.Ran...@cognizant.com>
Subject RE: EJB JNDI lookup
Date Wed, 23 Nov 2005 12:17:20 GMT

You have not specified the system properties to get the InitialContext.

Use the following code to get the InitialContext.



Properties props = new Properties();

props.put("java.naming.factory.initial","org.openejb.client.RemoteInitia
lContextFactory");

props.put("java.naming.provider.url", "127.0.0.1:4201");

props.put("java.naming.security.principal", "system");

props.put("java.naming.security.credentials", "manager");



javax.naming.InitialContext ctx = new
javax.naming.InitialContext(props);



With Regards,

Rakesh Ranjan





________________________________

From: Siraj Mohamed [mailto:Siraj@virtusa.com]
Sent: Wednesday, November 23, 2005 4:05 PM
To: user@geronimo.apache.org
Subject: EJB JNDI lookup



Hi All,



I have deployed a hello world application (helloworld.ear) on Geronimo
1.0 M5. I have written a java client class to test my application. But I
am getting following error message from the client code:



NamingException: Need to specify class name in environment or system
property, or as an applet parameter, or in an application resource file:
java.naming.factory.initial



It tells that I have to set java.naming.factory.initial and
java.naming.provider.url in the jndi.properties. What would be the
values to be specified for them for Geronimo server?





This is my sample client code:



/*

 * A simple client for accessing an EJB.

 */



public class HelloClient

{

  public static void main(String[] args)

  {

    System.out.println("client started...");

    try {

      javax.naming.Context ctx = new javax.naming.InitialContext();



      // This is for use with
com.evermind.server.ApplicationClientInitialContextFactory

      System.out.println("looking up...");

      Object homeObject = ctx.lookup("java:comp/env/HelloBean");



      // Narrow the reference to HelloHome

      HelloHome home =

            (HelloHome) PortableRemoteObject.narrow(homeObject,
HelloHome.class);



      // Create remote object and narrow the reference to Hello.

      Hello remote =

            (Hello) PortableRemoteObject.narrow(home.create(),
Hello.class);



      System.out.println(remote.sayHello("James Earl"));



    } catch(NamingException e) {

      System.err.println("NamingException: " + e.getMessage());

    } catch(RemoteException e) {

      System.err.println("RemoteException: " + e.getMessage());

    } catch(CreateException e) {

      System.err.println("FinderException: " + e.getMessage());

    }

  }

}





Thanks in advance,



-Siraj



This e-mail and any files transmitted with it are for the sole use of the intended recipient(s)
and may contain confidential and privileged information.
If you are not the intended recipient, please contact the sender by reply e-mail and destroy
all copies of the original message.
Any unauthorized review, use, disclosure, dissemination, forwarding, printing or copying of
this email or any action taken in reliance on this e-mail is strictly
prohibited and may be unlawful.

  Visit us at http://www.cognizant.com
Mime
View raw message