Hola, espero recibir ayuda de ustedes por favor, lo que sucede es que estoy empesando con ejb y por supuesto realice el hola mundo para empesar a conocer el concepto, pero cuando intento ejecutar la prueba me arroja una excepcion:
Este es el codigo fuente que uso:
Este es el codigo del EJB de session
Código:
package com.ryx.test.ejb;
import javax.ejb.Stateless;
@Stateless(name="HolaMundo", mappedName="HolaMundo")
public class HolaMundo implements HolaMundoRemote {
public HolaMundo() {
}
@Override
public String getSaludo() {
return "Hola Mundo";
}
}
Este es el codigo de la interfaz
Código:
package com.ryx.test.ejb;
import javax.ejb.Remote;
@Remote
public interface HolaMundoRemote {
public String getSaludo();
}
Y este el del cliente
Código:
package prueba.cliente;
import java.util.Properties;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import com.ryx.test.ejb.HolaMundoRemote;
public class ClienteHolaMundo {
public static void main(String[] args) throws Exception {
Properties ht = new Properties();
ht.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
ht.put(Context.PROVIDER_URL, "t3://127.0.0.1:7001");
Context ctx = new InitialContext(ht);
HolaMundoRemote saludo = null;
try {
saludo =(HolaMundoRemote)ctx.lookup("HolaMundo#"+HolaMundoRemote.class.getName());
} catch (NamingException e) {
e.printStackTrace();
}
System.out.println(saludo.getSaludo());
}
}
y por supuesto la excepcion que me arroja
Código:
Exception in thread "main" java.lang.NoClassDefFoundError: weblogic/jndi/ClientEnvironment
at weblogic.jndi.WLInitialContextFactory.getInitialContext(WLInitialContextFactory.java:117)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.InitialContext.<init>(InitialContext.java:197)
at prueba.cliente.ClienteHolaMundo.main(ClienteHolaMundo.java:18)