java ee 6 - EJB Stateless Session Bean - could not create error -


let me start pointing out while i've been using java se while first foray java ee territory. i'm using netbeans 6.9 , netbeans code generator of heavy lifting (more on further down). version of glassfish 3 - bog standard 1 ships when download netbeans.

i have created stateless session bean return simple string follows:

@stateless public class sdbsstatelesssessionbean implements sdbsstatelesssessionbeanremote {      @override     public string sayhello() {         return "this seems working fine.";     }      } 

with interface definition as:

@remote public interface sdbsstatelesssessionbeanremote {     string sayhello(); } 

the class , interface both created using 'insert code' feature netbeans provides. figure way avoid making stupid newbie errors (oh irony).

my problem when try call enterprise bean servlet (the call added using 'call enterprise bean' option netbeans code generator) following error:

javax.ejb.ejbexception: javax.ejb.createexception: not create stateless ejb 

the exception caused by: noclassdeffounderror

this how servlet makes call:

@ejb private sdbsstatelesssessionbeanremote sdbsstatelesssessionbean;  protected void processrequest(httpservletrequest request, httpservletresponse response)         throws servletexception, ioexception {     response.setcontenttype("text/html;charset=utf-8");     printwriter out = response.getwriter();     try {         out.println("<html>");         out.println("<head>");         out.println("<title>test servlet</title>");         out.println("</head>");         out.println("<body>");         out.println("<p>" + sdbsstatelesssessionbean.sayhello()  +"</p>");         out.println("</body>");         out.println("</html>");     } catch (exception e) {         out.println("<p>" + e.getmessage() + "</p>");         out.println("</body>");         out.println("</html>");     } {         out.close();     } } 

i'm afraid have not been able find solution problem after extensive googling (mostly because few forum posts seem come near problem contain jargon me follow solution).

i'd greatly appreciate advice/help pointing me in right direction.

if local ejb (in same jvm / ee container servlet) try declaring ejb @localbean (under @stateless annotation). remove @remote interface (and make ejb no loger implement it).

so ejb become

@stateless @localbean public class sdbsstatelesssessionbean {     public string sayhello()      {         return "this seems working fine.";     }      } 

Comments