下面我们来看怎么在J2EE SDK1.3中发布这个Session Bean。
第一步:创建J2EE 应用
在J2EE SDK 1.3中你是不能直接把EJB发布出去的。你需要把EJB添加到一个已有的J2EE应用中去,然后再发布。这里我们先创建一个新的名叫J2EEClientTest的应用。这个应用最终被保存为helloworld.ear。下面是具体的步骤:
1、 打开一个dos窗口,启动j2ee服务器。
j2ee -verbose (只有用这种模式启动,我们才可以看到程序中的输出)
2、 再打开一个dos窗口,启动应用发布工具:
deploytool
这个命令会启动一个如下图所示的发布工具:
3、 下面我们来创建一个新的J2EE应用。
A、 在上图所示的菜单中选择[File]--〉[New]--〉[Application]。或者直接选择窗口上的New Application快捷方式。
B、 这时会弹出一个对话窗口。在Application File Name输入框输入你保存这个应用的文件名:*.ear,我这里用的是helloworld.ear。在Application Display Name 输入框输入这个应用的显示名称,我这里用的是J2EEClientTest。选择ok后我们就创建好了一个新的应用。
4、 下面我们在这个新应用中加入我们的EJB组件。
A、编译好我们的EJB的3个类,我们在dos窗口下用如下的命令完成编译:
D:\j2sdkee1.3\myapp\HELLOW~1>javac -classpath ;.;d:\j2sdkee1.3\lib\j2ee.jar -d . HelloWorldHome.java HelloWorld.java HelloWorldBean.java
编译成功后的类会在当前的目录下的com\javausr\example目录中。
B、选择[File]--〉[New]--〉[EnterpriseBean](或者直接选择窗口上的New EnterpriseBean快捷方式)将会出现如下所示的New EnterpriseBean Wizard(跳过introduction窗口):
在JAR Display Name中填入HelloWorldEJB。在下面的Contents中将我们编译好的类加入进去。
c、选择NEXT按钮。进入下一个界面,在其中将这个EJB配置为Stateless Session Bean,并为相应的部分指定已经编译好的类。最后结果如下图所示:
d、一直选择NEXT按钮直到出现Security配置窗口,如下图:
在其中选择Deployment Settings ,会弹出上图中间的那个对话窗口,在其中选择Support Client Choice选项,然后确定。这个时候我们就可以选择Finish按钮了。这样我们新的EJB就创建好了。
第二步:发布这个应用,也就是发布了这个应用中的EJB。
1、 选择[tools]--〉[Deploy]或者窗口中的Deploy的快捷方式,会弹出如下窗口:
在其中选择Return Client Jar,而下面则会缺省生成一个返回文件的名称。这个jar文件中包括了供Stand Alone Client与J2EE Application Client访问EJB使用的一些类,是远程访问必备。选择NEXT,进入下一步。
2、 这一步我们要为EJB指定JNDI名称,以便客户端可以访问到它。如下图所示,我们输入"HelloWorld"做为JNDI名称。
现在选择Finish按钮,我们的应用就可以发布到指定的服务器上,现在可以通过客户端来访问我们的EJB了。