1、双击j2sdkee-1_2_1-win.exe开始安装,安装路径默认是C:j2sdkee1.2.1 为了配置方便指定为 C:j2ee ,你也可以指定自己的路径。
2、安装成功后将开发文档安装在J2EE\DOC目录下,当然,没有文档J2EE一样可以正常工作,该文档只是做为一个非常好的帮助,就像JAVA中的API一样,我们的例子就是从中选出的。
3、配置环境变量:
开始->设置->控制面板->系统->高级->环境变量->系统变量
新建:JAVA_HOME:C:JDK ------C:JDK是你安装JDK的目录
新建:J2EE_HOME:C:J2EE ------C:J2EE 是你安装J2EE 的目录
追加:CLASSPATH:C:J2EElibJ2EE.jar;.;
这里的C:J2EE是安装的根目录,如果你安装目录不是C:J2EE,请将C:J2EE换成你的安装目录。
1、启动J2EE,打开一个DOS窗口,在C:J2EE\BIN 目录下运行J2EE -verbose ,出现下列信息:
J2EE server Listen Port: = 1049 Naming service started: :1050 Published the configuration object ... Binding DataSource, name = jdbc/Cloudscape, url =jdbc:cloudscape:rmi:Cloudscape DB;create=true Web service started: 9191 Web service started: 8000 Web service started: 7000 J2EE server startup complete. |
启动成功!在以后的运行中不要关闭该窗口,在IE浏览器中访问HTTP://localhost:8000 可以看到默认的主页信息。
2、编译JAVA文件, 本例是DOC文档中guides\ejb\examples\converter的例子。
Converter.java文件:
import javax.ejb.EJBObject;
import java.rmi.RemoteException; public interface Converter extends EJBObject { public double dollarToYen(double dollars) throws RemoteException; public double yenToEuro(double yen) throws RemoteException; } |
ConverterEJB.java文件:
import java.rmi.RemoteException;
import javax.ejb.SessionBean; import javax.ejb.SessionContext; public class ConverterEJB implements SessionBean { public double dollarToYen(double dollars) { return dollars * 121.6000; } public double yenToEuro(double yen) { return yen * 0.0077; } public ConverterEJB() {} public void ejbCreate() {} public void ejbRemove() {} public void ejbActivate() {} public void ejbPassivate() {} public void setSessionContext(SessionContext sc) {} } |
ConverterHome.java文件:
import java.io.Serializable;
import java.rmi.RemoteException; import javax.ejb.CreateException; import javax.ejb.EJBHome; public interface ConverterHome extends EJBHome { Converter create() throws RemoteException, CreateException; } |
ConverterClient.java文件:
import javax.naming.Context;
import javax.naming.InitialContext; import javax.rmi.PortableRemoteObject; import Converter; import ConverterHome; public class ConverterClient { public static void main(String[] args) { try { Context initial = new InitialContext(); Object objref = initial.lookup("MyConverter"); ConverterHome home = (ConverterHome)PortableRemoteObject.narrow(objref, ConverterHome.class); Converter currencyConverter = home.create(); double amount = currencyConverter.dollarToYen(100.00); System.out.println(String.valueOf(amount)); amount = currencyConverter.yenToEuro(100.00); System.out.println(String.valueOf(amount)); } catch (Exception ex) { System.err.println("Caught an unexpected exception!"); ex.printStackTrace(); } } } |
建立一个目录保存EJB文件,C:\MYEJB,在该目录中建converter文件夹,将上述四个文件放到converter文件夹中,编译JAVA文件。C:MYEJBconverterjava *.java
3、启动Application Deployment Tool 布署工具,再打开一个DOS窗口,在C:J2EEBIN 目录下运行DEPLOYTOOL ,出现下列信息:
Deployment tool version 1.2.1. Type deploytool -help for command line options. Starting... |
启动成功后出现窗口界面,该工具比较消耗资源,如果你的系统配置不高,运行速度较慢。
4、此时出现主界面,单击主界面进入布署配置界面,选择File菜单,New Application...选顶, 在Application File Name输入:c:MYEJBconverter est.ear, , 在Application Disply Name输入:test, 点击OK。
5、选择File菜单,New Enterprise bean...选顶, 第一个界面为说明,可以直接Next 。 第二个界面在Contents框中添加CLASS文件,按ADD添加,在Root Directory 中指定C:MYEJBconverter为根目录,按回车确定,选出ConverterEJB.class、ConverterHome.class、Converter.class通过ADD添加到下边的框中,这是三个最基本的构建EJB的文件,按OK确定。按NEXT进入下一步。 第三个界面中:在Enterprise Bean Class中选中ConverterEJB, 在Home Interface中选中ConverterHome, 在Remote Interface中选中Converter , 在Enterprise Bean Display Name中随便起个名字MyTest, 在Bean type 中选中session和stateless , 其中stateless用于类中只有方法,不保存值的情况 , stateful用于类变量,保存值的情况 , 按NEXT进入下一步 。第四个界面中可以直接按finish,也可以一路NEXT下去,看看各项情况,不用做任何配置,最后FINISH
选择Tools菜单,Deploy Application...选项,在Deploy界面中选中Return Client Jar,其中testClient.jar( 就是我们要打包的jar)。此前可以在Server菜单中ADD来选择主机,这里只以本地机试例。 按NEXT进入下一步,在JNDI NAME中填上JNDI,注意该名与ConverterClient.java文件中Object objref = initial.lookup("MyConverter");的"MyConverter"必须一致,填好按回车。 按NEXT进入下一步,最后按FINISH 此时进入Deployment Progress,系统自动运行,完成后点击OK,布署完毕。在主界面的Server Application中增加了一项test。
运行试验, 打开一个DOS窗口,在C:myejbconverter>下运行
java -classpath c:j2eelibj2ee.jar;.;testClient.jar ConverterClient |
12160.0 0.77 |
如不能正常运行,大多是因为ClassPath设置的不正确造成的。
本文摘自:Java开发者:www.chinajavaworld.com |
责任编辑:小李(EMAIL:li_shuangzhen@zdnet.com.cn)
欢迎评论或投稿