KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > ejb > GreeterBean


1 // You can redistribute this software and/or modify it under the terms of
2
// the Ozone Library License version 1 published by ozone-db.org.
3
//
4
// Copyright (C) 1997-@year@ by Per Nyfelt. All rights reserved.
5
//
6
// $Id: GreeterBean.java,v 1.2 2003/11/29 16:19:28 per_nyfelt Exp $
7
package ejb;
8
9 import java.rmi.RemoteException JavaDoc;
10 import java.util.List JavaDoc;
11 import javax.ejb.*;
12 import javax.naming.InitialContext JavaDoc;
13
14 import db.FortuneGenerator;
15 import db.FortuneGeneratorImpl;
16 import org.ozoneDB.OzoneInterface;
17
18 /**
19  *
20  * <br> Date: Sep 7, 2002
21  * @author Per Nyfelt
22  */

23 public class GreeterBean implements SessionBean {
24
25     private SessionContext ctx;
26     private OzoneInterface db;
27     private FortuneGenerator fortuneGenerator;
28
29     public void ejbCreate() {
30         try {
31             db = (OzoneInterface) new InitialContext JavaDoc().lookup(OzoneInterface.class.getName());
32             fortuneGenerator = (FortuneGenerator) db.objectForName(FortuneGenerator.class.getName());
33             if (fortuneGenerator == null) {
34                 System.out.println("[GreeterBean] Storing new FortuneGenerator object");
35                 fortuneGenerator = FortuneGeneratorImpl.create(db);
36             } else {
37                 System.out.println("[GreeterBean] Found existing FortuneGenerator object");
38             }
39         } catch (Exception JavaDoc e) {
40             e.printStackTrace();
41         }
42     }
43
44     public void ejbActivate() throws EJBException, RemoteException JavaDoc {
45         try {
46             System.out.println("[GreeterBean] connecting to ozone...");
47             db = (OzoneInterface) new InitialContext JavaDoc().lookup(OzoneInterface.class.getName());
48             System.out.println("[GreeterBean] Connected!");
49             db.reloadClasses();
50             System.out.println("[GreeterBean] Classes reloaded");
51         } catch (Exception JavaDoc e) {
52             throw new RemoteException JavaDoc(e.toString());
53         }
54     }
55
56     public void ejbPassivate() throws EJBException, RemoteException JavaDoc {
57         db = null;
58     }
59
60     public void ejbRemove() throws EJBException, RemoteException JavaDoc {
61     }
62
63     public void setSessionContext(SessionContext context) throws EJBException, RemoteException JavaDoc {
64         ctx = context;
65     }
66
67     public String JavaDoc getGreeting() {
68         System.out.println("[GreeterBean] getting greeting");
69         String JavaDoc result = fortuneGenerator.getFortune();
70         System.out.println("[GreeterBean] returning " + result);
71         return result;
72     }
73
74     public void removeAllGreetings() {
75         System.out.println("[GreeterBean] removing all greetings");
76         fortuneGenerator.removeFortunes();
77     }
78
79     public void addGreeting(String JavaDoc greeting) {
80         System.out.println("[GreeterBean] adding greeting " + greeting);
81         fortuneGenerator.addFortune(greeting);
82     }
83
84     public List JavaDoc getAllGreetings() {
85         System.out.println("[GreeterBean] list all greetings");
86         return fortuneGenerator.getAllFortunes();
87     }
88 }
89
Popular Tags