Problema com um exemplo de EJB

Estou fazendo um exemplo EJB
mas Lanca o seguinte:

Exception in thread “main” java.lang.NullPointerException
at EJB.ClienteEJB.main(ClienteEJB.java:21)

TheConverter 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

Estou usando o sevidor da sun Aplication Server 8

o 1ª Resovido, o outro agora é :

10/12/2007 09:59:16 com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl <init> WARNING: "IOP00410201: (COMM_FAILURE) Connection failure: socketType: IIOP_CLEAR_TEXT; hostname: 10.10.1.12; port: 900" org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 201 completed: No at com.sun.corba.se.impl.logging.ORBUtilSystemException.connectFailure(Unknown Source) at com.sun.corba.se.impl.logging.ORBUtilSystemException.connectFailure(Unknown Source) at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.<init>(Unknown Source) at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.<init>(Unknown Source) at com.sun.corba.se.impl.transport.SocketOrChannelContactInfoImpl.createConnection(Unknown Source) at com.sun.corba.se.impl.protocol.CorbaClientRequestDispatcherImpl.beginRequest(Unknown Source) at com.sun.corba.se.impl.protocol.CorbaClientDelegateImpl.request(Unknown Source) at com.sun.corba.se.impl.resolver.BootstrapResolverImpl.invoke(Unknown Source) at com.sun.corba.se.impl.resolver.BootstrapResolverImpl.resolve(Unknown Source) at com.sun.corba.se.impl.resolver.CompositeResolverImpl.resolve(Unknown Source) at com.sun.corba.se.impl.resolver.CompositeResolverImpl.resolve(Unknown Source) at com.sun.corba.se.impl.resolver.CompositeResolverImpl.resolve(Unknown Source) at com.sun.corba.se.impl.orb.ORBImpl.resolve_initial_references(Unknown Source) at com.sun.jndi.cosnaming.CNCtx.setOrbAndRootContext(Unknown Source) at com.sun.jndi.cosnaming.CNCtx.initOrbAndRootContext(Unknown Source) at com.sun.jndi.cosnaming.CNCtx.<init>(Unknown Source) at com.sun.jndi.cosnaming.CNCtxFactory.getInitialContext(Unknown Source) at javax.naming.spi.NamingManager.getInitialContext(Unknown Source) at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source) at javax.naming.InitialContext.init(Unknown Source) at javax.naming.InitialContext.<init>(Unknown Source) at EJB.ClienteEJB.teste(ClienteEJB.java:43) at EJB.ClienteEJB.main(ClienteEJB.java:18) Caused by: java.net.ConnectException: Connection refused: connect at sun.nio.ch.Net.connect(Native Method) at sun.nio.ch.SocketChannelImpl.connect(Unknown Source) at java.nio.channels.SocketChannel.open(Unknown Source) at com.sun.corba.se.impl.transport.DefaultSocketFactoryImpl.createSocket(Unknown Source) ... 21 more Unable to lookup home: TheConverter Cannot connect to ORB Exception in thread "main" java.lang.NullPointerException at EJB.ClienteEJB.main(ClienteEJB.java:26)

Sera que isso não é suficiente?

Quais foram as properties ue você setou para incializar o seu Context?

[]'s.

Tudo:

[code]try {

		Hashtable env = new Hashtable();
		env.put(Context.INITIAL_CONTEXT_FACTORY,
						"com.sun.jndi.cosnaming.CNCtxFactory");

		InitialContext ic = new InitialContext(env);
		Object objRef = ic.lookup("java:comp/env/ejb/TheConverter");
		ConverterHome home = (ConverterHome) PortableRemoteObject.narrow(
				objRef, ConverterHome.class);
		converter = home.create();
	} catch (RemoteException ex) {
		System.out.println("Couldn't create converter bean."
				+ ex.getMessage());
	} catch (CreateException ex) {
		System.out.println("Couldn't create converter bean."
				+ ex.getMessage());
	} catch (NamingException ex) {
		System.out.println("Unable to lookup home: " + "TheConverter "
				+ ex.getMessage());
	}[/code]

Cara, qual o EJB Container que você está usando?
Caso seja o Glassfish (esse eu testei já), tenta configurar assim o seu contexto inicial:

        Properties props = new Properties();
        props.setProperty("java.naming.factory.initial",
                "com.sun.enterprise.naming.SerialInitContextFactory");
        props.setProperty("java.naming.factory.url.pkgs",
                "com.sun.enterprise.naming");
        props.setProperty("java.naming.factory.state",
                "com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl");
       CContext ctx = new InitialContext(props);

[]'s…

Eu estou usando o Sun Aplication Server 8.

Vou tentar…