users@glassfish.java.net

Re: Session Bean Confusion

From: Pankaj Jairath <Pankaj.Jairath_at_Sun.COM>
Date: Fri, 11 Apr 2008 18:31:31 +0530

With EJB 3.0. one really does not need to define the remote interface.
Should try using the annotation on POJO to create a session bean. Class
level annotations - @Stateless and @Remote should suffice to define a
stateless bean with remote interface.

If @Remote is not classified then by default a local interface is
rendered with all the public methods as its business methods. One can
limit the selection of such methods by annotating it with @BusinessMethod
Example:

import javax.ejb.*;
/**
 * A stateless session bean requesting that a remote business
 * interface be generated for it.
 */
@Stateless
@Remote
public class HelloWorldBean {
   public String sayHello() {
      return "Hello World!!!";
   }
}


regards
Pankaj

Example
Markus KARG wrote:
> I am using the verifier to check wheter my application is complaint to
> EJB 3.0.
>
> In EJB 3.0 CORE spec, chapter 4.6.7 "Session Bean's Remote Interface",
> it says:
>
> "The interface must extend the javax.ejb.EJBObject interface."
>
> Ok, so I wrote this:
>
> @Remote
> public interface HelloServerRemote extends EJBObject {
>
> But the verifier now complains about doing so:
>
>
>
> 1 # of Warnings : 0 # of Errors : 0 -----------------------------
> RESULTS FOR EJB-RELATED TESTS -----------------------------
> -------------- FAILED TESTS : -------------- Test Name :
> tests.ejb.ejb30.BusinessIntfInheritance Test Assertion : A business
> interface must not extend javax.ejb.EJBObject or
> javax.ejb.EJBLocalObject. Please refer to EJB 3.0 Simplified API
> Section #3.2 for further information. Test Description : For [
> hello#helloserver.jar#HelloServer ] [ example.server.HelloServerRemote
> ] extends either javax.ejb.EJBObject or javax.ejb.EJBLocalObject.
> ---------------------------------- END OF STATIC VERIFICATION RESULTS
> ----------------------------------
>
>
>
> I am totally confused...?!
>
> What is my fault?
>
> Thanks
> Markus
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: users-help_at_glassfish.dev.java.net
>