Mega Code Archive

 
Categories / Java / EJB3
 

Stateless Session Bean With Three Methods

File: jndi.properties java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces java.naming.provider.url=localhost:1099 File: Main.java import javax.naming.InitialContext; import bean.CountRemote; public class Main {   public static void main(String[] a) throws Exception {     String name = "rntsoft";     CountRemote service = null;     // Context compEnv = (Context) new InitialContext().lookup("java:comp/env");     // service = (HelloService)new     // InitialContext().lookup("java:comp/env/ejb/HelloService");     service = (CountRemote) new InitialContext().lookup("CountBean/remote");     int countVal = 9;     service.set(countVal);     countVal = service.count();     System.out.println(countVal);     System.out.println("Calling count() on beans...");     countVal = service.count();     System.out.println(countVal);     service.remove();   } } File: CountBean.java package bean; import javax.ejb.Remote; import javax.ejb.Remove; import javax.ejb.Stateless; import javax.interceptor.Interceptors; @Stateless @Remote(CountRemote.class) public class CountBean implements CountLocal, CountRemote {     /** The current counter is our conversational state. */     private int val;     /**      * The count() business method.      */     public int count() {         System.out.println("count()");         return ++val;     }     /**      * The set() business method.      */     public void set(int val) {         this.val = val;         System.out.println("set()");     }     /**      * The remove method is annotated so that the container knows      * it can remove the bean after this method returns.      */     @Remove     public void remove() {         System.out.println("remove()");     } } File: CountLocal.java package bean; import javax.ejb.Local; @Local public interface CountLocal  {     /**      * Increments the counter by 1      */     public int count();     /**      * Sets the counter to val      * @param val      */     public void set(int val);     /**      * removes the counter      */     public void remove();   } File: CountRemote.java package bean; import javax.ejb.Remote; @Remote public interface CountRemote{   /**    * Increments the counter by 1    */   public int count();   /**    * Sets the counter to val    * @param val    */   public void set(int val);   /**    * removes the counter    */   public void remove(); }                     EJB-StatelessSessionBeanWithThreeMethods.zip( 4,487 k)