您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > JBOSS的J2EE开发实践1-2
win2k环境下的JBOSS开发实践之一:初始基础开发环境的配置与测试说明:此节针对ejb开发初学者,主要是手动配置一个最基本的基于文本开发的环境,让初学者从头开始编写各类程序和配置文件,以更清楚的了解EJB开发和部署的步聚与原理。这是作者在学习EJB开发时的一个总结,欢迎指正。作者联系地址址:josserchai@yahoo.com一、需求软件列表及下载地址1、SunJavaSDK,我们采用的版本为:j2sdk1.4.1_01,下载地址为:,下载后的文件名为:j2sdk-1_4_1_01-windows-i586.exe2、JBOSS,一个免费的EJB容器。我们采用版本为:jboss-3.2.1_tomcat-4.1.24,这是一个内部己集成Tomcat的EJB容器。下载地址为:,下载后的文件名为:jboss-3.2.1_tomcat-4.1.24.zip。3、注意:作者只保证在以上软件版本下以下步聚成功,对于其它的版本也应相同,但作者没有求证。以下步聚请严格按照执行。二、安装所需软件1、安装SDK到C:\j2sdk1.4.1_01;方法为:双击执行下载的j2sdk-1_4_1_01-windows-i586.exe文件,选择安装目录为C:\j2sdk1.4.1_01,其它默认即可。2、安装JBOSS;方法为:将下载的jboss-3.2.1_tomcat-4.1.24.zip文件解压到任意一个目录,解压后会在此目录中产生一个jboss-3.2.1_tomcat-4.1.24文件夹,在此文件夹下有一系列的文件和文件夹。然后在C盘根目录下建一个JBOSS目录,并将刚才解压后jboss-3.2.1_tomcat-4.1.24文件夹下的一系列文件和文件夹全都拷贝到C:\JBOSS目录下。即将JBOSS安装到了C:\JBOSS目录中。3、以上两个步聚进行后,文件夹如下图所示:三、配置运行环境及测试程序目录一、设置环境变量1、设置JAVA_HOME系统变量:在win2k下方法为,在桌面上右键点击“我的电脑”,选择属性,然后在弹出的页面上点“高级”-“环境变量”,然后在弹出的页面中“系统变量”下点击“新建”,然后在弹出的窗口中“变量名(N)输入“JAVA_HOME”,在“变量值(V)”一栏中输入“C:\j2sdk1.4.1_01”。2、以同样的方法设置:JBOSS_HOME值为:C:\JBOSS3、以同样的方法在上面地方将Path的值后追加:以下内容:“C:\j2sdk1.4.1_01\bin;C:\JBOSS\bin”二、创建程序目录1、在C:\JBOSS下新建一个myproject目录,用于存放自己的所有项目。在myproject目录下新建三个目录:一个是jsp目录,其下用于存放所有的jsp文件和servlet文件及其它的html,2、image文件等;一个是ejb目录,用于存放所有即将发布的EJB类文件;一个是src目录,用于存放所有的java源文件。3、在jsp目录下新建一个目录,并命名为:hello.war,用来发布WEB程序,然后再在此目录下新建一系列文件夹:即在hello.war下新建WEB-INF(大写)文件夹,再在WEB-INF下新建classes文件夹,再在classes文件夹下新建一个hello文件夹。4、在ejb目录下新建一个client目录和一个hello.jar目录,分别用于存放EJB客户端和要发布的服务器端类。然后再在client目录下新建一个hello目录,再在此目录下新建一个ejb目录。然后在hello.jar目录下新建一个hello目录和一个META-INF(大写)目录,并在hello目录中新建一个ejb目录。5、以上过程结束后,形成的目录结构如下图所示:四、编写测试程序及相关脚本一、测试JBOSS安装成功与否,方法如下:进入C:\JBOSS目录中,执行run.bat–call启动具有全部功能的JBOSS配置服务器。屏幕经过一会滚动后不再滚动。这时启动IE输入:即可看到IE中出现一系列列表,即表明JBOSS启动成功。此时可在启动JBOSS的DOS窗口上按Ctrl+C关闭JBOSS服务器。二、进入C:\JBOSS\myproject\jsp\hello.war目录中,用记事本新建一个index.jsp文件,内容如下:用于测试jsp程序%@pagecontentType=text/html;charset=gb2312%htmlheadtitle/titlemetahttp-equiv=Content-Typecontent=text/html;charset=gb2312/headbodybgcolor=#FFFFFFtext=#000000topmargin=5%Stringhello=Helloworld!thiscreatedbyjspfile!;out.println(hello);%/body/html三、进入C:\JBOSS\myproject\src目录,新建一个HelloWorld.java,是一个Servlet类,内容如下:packagehello;importjava.io.*;importjavax.servlet.*;importjavax.servlet.http.*;publicclassHelloWorldextendsHttpServlet{publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsIOException,ServletException{response.setContentType(text/html);PrintWriterout=response.getWriter();out.println(hr);out.println(HelloWorld!ThisiscreatedbyServlet!);out.println(hr);}}到此,我们就建立好了用于测试的JSP文件和Servlet类,下面将建HelloWorld的无状态SessionBean。四、进入C:\JBOSS\myproject\src目录,新建一个Hello.java文件,以实现EJB的Remote接口,内容如下,packagehello.ejb;/***RemoteinterfaceforEnterpriseBean:Hello*Remote接口*/publicinterfaceHelloextendsjavax.ejb.EJBObject{/***唯一的方法hello,向客户端返回问候。*/publicStringhello()throwsjava.rmi.RemoteException;}同样在此目录中新建一个HelloLocal.java文件,实现Local接口,内容如下:packagehello.ejb;importjavax.ejb.EJBLocalObject;publicinterfaceHelloLocalextendsEJBLocalObject{publicStringhello();}同样在此目录中新建一个HelloHome.java文件,实现Home接口,内容如下:packagehello.ejb;/***HomeinterfaceforEnterpriseBean:Hello*Home接口*/publicinterfaceHelloHomeextendsjavax.ejb.EJBHome{/***CreatesadefaultinstanceofSessionBean:Hello*/publicHellocreate()throwsjavax.ejb.CreateException,java.rmi.RemoteException;}同样在此目录中新建一个HelloLocalHome.java文件,实现LocalHome接口,内容如下:packagehello.ejb;importjavax.ejb.EJBLocalHome;publicinterfaceHelloLocalHomeextendsEJBLocalHome{HelloLocalcreate()throwsjavax.ejb.CreateException;}同样在此目录中新建一个HelloBean.java,实现EJB类,内[容如下:packagehello.ejb;/***BeanimplementationclassforEnterpriseBean:Hello*/publicclassHelloBeanimplementsjavax.ejb.SessionBean{privatejavax.ejb.SessionContextmySessionCtx;/***getSessionContext*/publicjavax.ejb.SessionContextgetSessionContext(){returnmySessionCtx;}/***setSessionContext*/publicvoidsetSessionContext(javax.ejb.SessionContextctx){mySessionCtx=ctx;}/***ejbActivate*/publicvoidejbActivate(){}/***ejbCreate*/publicvoidejbCreate()throwsjavax.ejb.CreateException{}/***ejbPassivate*/publicvoidejbPassivate(){}/***ejbRemove*/publicvoidejbRemove(){}/***商务方法*/publicStringhello(){returnHello,World!thisiscreatedbyEJB!;}}至此,我们己经将EJB类所需的所有的所有类编写好了,下面我们编写用于测试此EJB程序的文件,具体来说有两个:一个是用客户端Servlet来调用EJB,另一个是用客户端类来调用EJB。实现如下:五、实现测试EJB的程序进入C:\JBOSS\myproject\src目录中,新建一个HelloServlet.java文件,用于测试通过Servlet调用EJB。内容如下:packagehello;importjavax.servlet.*;importjavax.servlet.http.*;importjava.io.*;importjavax.ejb.*;importjavax.naming.InitialContext;importjavax.naming.Context;importhello.ejb.*;importjava.util.*;publicclassHelloServletextendsHttpServlet{privateHelloHomehome;publicvoidinit()throwsServletException{try{StringinitCtxFactory=getInitParameter(Context.INITIAL_CONTEXT_FACTORY);StringproviderURL=getInitParameter(Context.PROVIDER_URL);Propertiesenv=newProperties();if(initCtxFactory!=null){env.put(Context.INITIAL_CONTEXT_FACTORY,initCtxFactory);}if(providerURL!=null){env.put(Context.PROV
本文标题:JBOSS的J2EE开发实践1-2
链接地址:https://www.777doc.com/doc-3967552 .html