/** * 第一步: * 定義一個新的接口繼續javax.ejb.EJBObject。新定義的接口中的每一個方法都必須拋出 * java.rmi.RemoteException異常。 */ public interface RemoteInterface extends javax.ejb.EJBObject { public String message(String str)throws java.rmi.RemoteException; }
RemoteObject.java
/** * 第二步: * 定義一個類來實現javax.ejb.sessionBean接口。并在該類中實現在第一步中編寫的接口中所定義的方法。 */ public class RemoteObject implements javax.ejb.SessionBean { public String message(String str)throws java.rmi.RemoteException { System.out. return "Hello,I'm Remote Object,I received your message: /'"+str+"/'"; //返回一應答字符串。 }
public RemoteObject() {} public void ejbCreate() {} public void ejbRemove() {} public void ejbActivate() {} public void ejbPassivate() {} public void setSessionContext(javax.ejb.SessionContext sc) {} }
5. 部署應用程序 啟動Application Dopolyment Tool:新開一個Dos窗口,鍵入以下命令,%J2EE_HOME%/bin/deploytool 。該工具啟動速度可能比較慢,要耐心等待。啟動成功后會出現主界面(此時不要關閉Dos窗口)。在該界面中選 擇 File菜 單 ,再選New Application項。在 Application File Name 輸 入 :C:/HelloWorld/HelloWorld.ear 。在 Application Disply Name 輸 入 你所喜歡的顯示名如:HelloWorld。點 擊 OK,在主界面的樹形結構Files-->Applications下將增加新的一項:HelloWorld。這意味著產生了一個新的應用程序。接下來我們要做的就是部署該應用程序。在主界面的樹形結構下選中HelloWorld,然后再在主界面的File菜單中選取New-->Enterprise Bean,在彈出的名為“New Enterprise Bean - IntrodUCtion”窗口中選取Next跳過第一步,在接下來的一步中,Create New EJB File in Application項中選HelloWorld,在EJB Display Name中填上你喜歡的名字如:Hello World EJB,點擊Edit按鈕,在彈出的窗口中,Start Directory中填:C:/HelloWorld/,在Available Files中展開樹形結構C:/HelloWorld/,選取RemoteInterface.class、RemoteObject.class、RemoteHome.class、Client.class四項,點Add按鈕添加,然后按OK確定。此時在Contents框中增加了該四個class。點Next進入下一步。Session項選Stateless,意為不保存session狀態。Enterprise Bean Class選RemoteObject。Enterprise Bean Name中填上你喜歡的名字如:Hello World Bean。Remote Home Interface中選RemoteHome,Remote Interface中選RemoteInterface。選Next進入下一步。接下來的步驟可直接點Finish。這時主界面的樹形結構中Files-->Application-->Hello World中將出現Hello World EJB-->Hello World Bean子項。在主界面的樹形結構下選中Hello World,然后再在主界面的Tools菜單中選取Deploy,將彈出新的窗口名為“Deploy Hello World - Introduction”。Object to deploy中選Hello World,Target server中選localhost,選中Retuen Client Jar,在Client Jar File Name中填上:C:/HelloWorld/HelloWorldClient.jar。選Next進入下一步,在application框的JNDI Name框中雙擊并填上HelloWorld,注重必須與Client.java中Object obj=initContext.lookup("HelloWorld")的“HelloWorld”保持一致。點Next進入下一步。點Finish完成。這時將出現Deployment Progress窗口。假如有誤,該窗口將出現異常信息。假如一切正常,點OK便完成了部署工作。
6. 運行應用程序 新開一個Dos窗口。進入C:/HelloWorld/Classes目錄下運行:C:/ HelloWorld/Classes>java -classpath %J2EE_HOME%/lib/j2ee.jar;.;HelloWorldClient.jar; Client 。運行成功則出現如下信息:Client Received From Remote Object: "Hello,I'm Remote Object,I received your message: 'Hello,Remote Object!'" 。而服務端Dos窗口(j2ee -verbose)中出現如下信息:Remote Object Received From Client: "Hello,Remote Object!" 。