添加Find by方法
方法如上,只不过在"Add Finder"菜单中填上:
Method Signature:Simple_ex finderByNO(java.lang.String sCOMPANY_ID)
EJB-QL: SELECT OBJECT(o) from Simple_exBean as o where o.companyId LIKE ?1
同样加上
Method Signature:Simple_ex finderByCompanyName(java.lang.String sCOMPANY_NAME)
EJB-QL: SELECT OBJECT(o) from Simple_exBean as o where o.companyName LIKE ?1
对EJB的一些属性可直接在"属性编辑器"中进行设置,比如"ejb-name",是否是local的EJB等等。
比如需要在下图中在把"table-name""SIMPLE_EX"改成"LWTEST. SIMPLE_EX"。 public String create(java.lang.String arg0, java.lang.String arg1) throws javax.ejb.CreateException 同理再拖拽入finderByCompanyName(),finderByNO()方法,并对其返回值做相应的修改 public String finderByNO(java.lang.String arg0) throws javax.ejb.FinderException 点击Workshop工具栏上的运行按钮" 然后可再测试finderby方法
测试EJB
1 右键点击"MyEJBApp"应用,建立一个测试用的"Web Project",名为"EJBTest";
2 在这个"EJBTest"下新建一个目录"TestEJB"
3 右键点击这个目录,"new"一个"Java Control",其类型选择为"EJB Control"
上图中4个步骤完成后,将生成一个TEJB.jcx控件,然后再鼠标右键点击这个EJB控件,选择"Create Test JWS File",用Web Service进行这个EJB控件的测试
双击新生成的TEJBTest.jws文件,将TEJBTest中的两个方法删除,
从"Data Palette"中展开"tEJB"控件,从控件中选择我们想要测试的方法,拖拽到"Design View"中
因为create方法返回的是SIMPLEEJB.Simple_ex,不能被Web Service测试页面直接显示,故系统会报如下提示信息。
因而我们需要对加入的这个create方法做下处理,点击create()方法,进入Source View,对其返回值做处理:
{
return (tEJB.create(arg0,arg1)).getCompanyName();
}
public String finderByCompanyName(java.lang.String arg0) throws javax.ejb.FinderException
{
String sInput="%"+arg0+"%";
return tEJB.finderByCompanyName(sInput).getCompanyName();
}
{
String sInput="%"+arg0+"%";
return tEJB.finderByNO(sInput).getCompanyName();
}",进行测试
可以用这个测试窗口在Create部门,输入相应的值,生成数据项,比如
string arg0: 1
string arg1: BEA
测试结果如下:
小结
本文给读者简述了在WebLogic Workshop上进行EJB的开发、测试方法,以期使读者通过对本文的学习能够快速入门WebLogic Workshop的开发。
在下一篇使用笔记中,作者将给大家介绍如何用Workshop开发一个调用该EJB的简单的Pageflow,敬请大家关注。