JBuilder9+Weblogic7实战篇
SESSION BEAN篇
作者:黄 凯
E_mail:hk_sz@163.com
第二篇 SESSION BEAN 的运用
一、创建 EJBs
1.在菜单栏选择File/New...;
2.点击Enterprise子页;
3.选择EJB Module然后点击OK,出现EJB Module窗口;
4.在Name后输入Math;
5.将Version更改为EJB 2.0 compliant;
6.点击OK。 EJB 的设计在文档窗口中进行。
7.在右边Math子页中,点击第一个Create EJB的图标,弹出菜单后,找到并点击Session Bean;
8.在Bean name后输入MathEJB;
9.将鼠标移到MathEJB上,按右键,弹出菜单;
10.选择Add/Method,这时出现一个会话框,你可以在上面对这个方法的属性进行设置;
11.在Method name后输入add;
12.在Return type后输入int;
13.Interfaces选择remote;
14.右键单击add,在弹出菜单中选择View Bean source;
15.这时EJB的源代码就显示出来了,更改add方法如下:
public int add(int num1, int num2){
int result = num1 + num2;
return result;
}
16.在工程窗口中<Project Source>/mathsample包中找到MathEJB.java文件,双击打开它;
17.将
public int add() throws RemoteException;
替换为:
public int add(int num1, int num2) throws RemoteException;
18.在工程窗口中展开Math模块;
19.双击MathEJB,在文档窗口的General子页中将Home JNDI name:的内容更改为ejb/MathEJB;
20.File/Save ALL;
21.Math模块右键打开菜单,选择Make以编译EJB classes;
接下来我们测试一下这个Bean是否能正常工作。
二、创建一个客户端用来测试这个Bean
JBuilder为我们提供了一个这样的测试客户端。
1.在菜单栏选择File/New...;
2.点击Enterprise子页;
3.选择EJB Test Client然后点击OK,出现EJB Test Client窗口;
4.点击Next,确认EJB name后的内容是MathEJB;
5.只选中Generate Main Function,然后点击Finish;
6.在文档窗口中选中MathEJBTestClient1子页,在代码段请确认是否含有此句:
Object ref = context.lookup("ejb/MathEJB");
7.再确认URL是否为:
String url = "t3://localhost:7001";
8.在main方法中添加:
try {
MathEJBHome home = client.getHome();
MathEJB test = home.create();
System.out.println("Result is: "+test.add(12,12));
}
catch (Exception e) {
System.out.println(e.toString());
9.Save ALL;
注:以下这步非必须的,你直接手工启动Weblogic也可以,但是必须也只需启动一个。
三、配置 server
1.在菜单栏选择Run/Configurations...;
2.选择Run子页;
3.点击New;
4.在Name后输入Server;
5.在Type中选择Server;
6.点击OK。
四、部署和运行
1.在工具栏中通过run projest选择执行Server,启动Weblogic;
2.然后在工程窗口中找到Math模块下的Math.jar,右键打开菜单,选择DeployOptions for "Math.jar"/Deploy将其在Weblogic中部署;
3.在工程窗口中找到MathEJBTestClient1.java,右键打开菜单,点击Run using "MathEJBTestClient1";
4.在信息窗口中,我们可以看见:
Result is: 24
OK,至此你成功地做了第一个的Session Bean了。
切记:Weblogic只要启动一个就可以了,端口一定要是7001,如果不是就要将“String url = "t3://localhost:7001";”改成你对应的端口。
我的文章首发牛耳论坛(www.newer.com.cn/bbs)和程序员论坛(www.csdn.net),欢迎转载,不过,请保留作者以及修订者的名字,谢谢。