Ejb

2 respostas
A

Oi, Galera!

comecei a ler um livro sobre EJB esta semana. Porém, ao tentar rodar no NetBeans o programa abaixo que utiliza Session Beans ...

package client;

import beans.SimpleSession;
import javax.naming.InitialContext;

public class SimpleSessionClient {
    
   public static void main( String[] args ) throws Exception{
       InitialContext context = new InitialContext( );
       SimpleSession simpleSession = 
               ( SimpleSession ) context.lookup( SimpleSession.class.getName() );
       }
}

... o seguinte erro foi mostrado:

Exception in thread "main" javax.naming.NoInitialContextException: 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
        at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:645)
        at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
        at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:284)
        at javax.naming.InitialContext.lookup(InitialContext.java:351)
        at client.SimpleSessionClient.main(SimpleSessionClient.java:21)
Java Result: 1

Sendo que já adicionei a biblioteca ejb-3_0-api.jar.
Alguém sabe o que está dando errado?
[]'s!

2 Respostas

_

Seu arquivo jndi.properties está configurado corretamente?

thimor

ola, falta voce iniciar as propriedades da jndi... segue o codigo correto

package exemplo;

import javax.naming.*;
import java.util.Hashtable;

public class HelloCliente {

	public static void main(String[] args) throws Exception {

		Hashtable props = new Hashtable();
		props.put(InitialContext.INITIAL_CONTEXT_FACTORY,
				"org.jnp.interfaces.NamingContextFactory");
		props.put(InitialContext.PROVIDER_URL,"jnp://localhost:1099");

		Context ctx = new InitialContext(props);

		Object obj = ctx.lookup("Hello");
		HelloHome home = (HelloHome) javax.rmi.PortableRemoteObject.narrow(obj,
				HelloHome.class);

		Hello hello = home.create();
		System.out.println(hello.hello());
		hello.remove();
	}
}
Criado 21 de março de 2007
Ultima resposta 22 de mar. de 2007
Respostas 2
Participantes 3