JBoss Community

java.lang.ClassNotFoundException: com.HelloWorldBeanRemote

created by Gustavo penayo in EJB3 Development - View the full discussion

Hola!

Estoy tratando de hacer un HelloWorld con ejb 3. version de jboss 7.1

tengo el ejb de la siguiente manera:

el nombre del proyecto es HolaMundoEjb

//---------------------------------------------------------

package com;

import javax.ejb.Remote;

 

@Remote

public interface HelloWorldBeanRemote {

    public String getHelloWorld();

 

}

//-------------------------------------------------------

package com;

import javax.ejb.LocalBean;

import javax.ejb.Stateless;

 

@Stateless

@LocalBean

public class HelloWorldBean implements HelloWorldBeanRemote {

 

      public String getHelloWorld(){

          return "Hola EJB 3.0";

    }

}

 

Cuando implemento el ejb, en la consola del servidor me da la siguiente información:

10:50:07,673 INFO  [org.jboss.as.ejb3.deployment.processors.EjbJndiBindingsDeploymentUnitProcessor] (MSC service thread 1-1) JNDI bindings for session bean named HelloWorldBean in deployment unit deployment "HolaMundoEjb.jar" are as follows:

 

          java:global/HolaMundoEjb/HelloWorldBean!com.HelloWorldBean

          java:app/HolaMundoEjb/HelloWorldBean!com.HelloWorldBean

          java:module/HelloWorldBean!com.HelloWorldBean

          java:global/HolaMundoEjb/HelloWorldBean!com.HelloWorldBeanRemote

          java:app/HolaMundoEjb/HelloWorldBean!com.HelloWorldBeanRemote

          java:module/HelloWorldBean!com.HelloWorldBeanRemote

          java:jboss/exported/HolaMundoEjb/HelloWorldBean!com.HelloWorldBeanRemote

 

En mi cliente tengo un servlet que tiene el siguiente codigo para acceder al ejb:

37|     HelloWorldBeanRemote hello = null ;

43|     try{

44|             Context initial = new InitialContext();

45|             hello = (HelloWorldBeanRemote)initial.lookup("ejb:HolaMundoEjb/HelloWorldBean!com.HelloWorldBeanRemote");

47|     }catch(Exception NamingException){

48|             NamingException.printStackTrace();

49|     }

53|     String var = hello.getHelloWorld() ;

 

Cuando ejecuto el servlet obtengo el siguiente error :

javax.servlet.ServletException: La ejecución del Servlet lanzó una excepción

 

causa raíz

java.lang.NoClassDefFoundError: com/HelloWorldBeanRemote
     Saludo.HelloWorld.doGet(HelloWorld.java:45)
     javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
     javax.servlet.http.HttpServlet.service(HttpServlet.java:847)

 

causa raíz

java.lang.ClassNotFoundException: com.HelloWorldBeanRemote from [Module "deployment.WebPrueba.war:main" from Service Module Loader]
     org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190)
     org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468)
     org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456)
     org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
     org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120)
     Saludo.HelloWorld.doGet(HelloWorld.java:45)
     javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
     javax.servlet.http.HttpServlet.service(HttpServlet.java:847)

 

No se si me estoy equivocando con el jndi en el lookup. No se cual debo tomar.

Reply to this message by going to Community

Start a new discussion in EJB3 Development at Community