fengling981825的个人空间 https://blog.eetop.cn/fengling [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

集成Eclipse、Lomboz和JBoss开发J2EE应用

已有 1449 次阅读| 2006-8-30 00:39 |个人分类:编程

天气: 晴朗
心情: 高兴

Eclipse是一个非常优秀的集成开发环境,这个在IBM支持下的开放源码项目经过一段时期的发展完善,已经为广大Java开发者所熟悉。Eclipse的出现,为Java开发者提供了免费使用强大的Java IDE的机会,通过集成大量的plugin,Eclipse的功能可以不断扩展,以支持各种不同的应用。

Lomboz是一个免费的Eclipse plugin,它将很多Java应用服务器、J2EE组件和Web应用开发集成到Eclipse中,可以帮助Java开发者使用Eclipse建立、测试、部署J2EE应用。

JBoss是一个开放源码、功能强大的Java应用服务器,也是目前最受Java开发者欢迎的Java应用服务器,被Java World的编辑们评为2002年的最佳应用服务器。2003年到目前为止的下载量已经超过了一百五十万次。

一、下载、安装和配置

1. Eclipse的下载和安装

首先需要安装JDK,可以到Sun的网站上去下载最新版本并安装。

然后到www.eclipse.org去下载Eclipse的最新版本,目前的最新版本是2.1。下载以后解压到自己想要的目录中,比如D:\Eclipse,直接运行eclipse.exe,第一次运行的时候会自动寻找JDK并完成相应的配置,然后就进入了Eclipse的主界面。关于Eclipse的基本使用方法,developerWorks,Eclipse的网站以及Eclipse的随机文档上都有详细地介绍,这里不详细描述了。

2. Jboss的下载、安装

JBoss目前的最新版本是3.2.1,不过我觉得这个版本有一些问题,启动服务器的时候会有一些jar包找不到,导致WARN和ERROR的发生。所以我推荐下载3.0.7,也可以下载集成了Tomcat 4.1.24的JBoss 3.0.7版本。

下载后解压,我们假设JBOSS_HOME为JBoss的主目录,执行JBOSS_HOME/bin/run.bat,就启动了JBoss服务器。一般会在1分钟左右启动完毕。

3. Lomboz的下载、安装和配置

Lomboz目前的最新版本是2.1,我们假设Eclipse的主目录为ECLIPSE_HOME,下载以后将其解压到ECLIPSE_HOME/plugins文件夹下面,这样在这个文件夹下面就多了一个com.objectlearn.jdt.j2ee文件夹。

然后启动Eclipse, 会自动出现Customize Perspective的对话框,如果没有出现的话,也可以通过菜单"Window->Customize Perspective"来显示这个对话框,如下图所示:



展开File->New,选择所有与Lomboz相关的选项;

展开Window->Show View,选择Lomboz J2EE View;

展开Other,选择Lomboz Actions。

确认OK。

下面要进行Lomboz的配置:

首先,打开属性对话框,确保Java->New Project中的设置:



接着在Lomboz属性中,确保如下设置:



最后,设置服务器属性。

Lomboz预先定义了一些常用的Java服务器的设置,这些配置文件放在ECLIPSE_HOME/plugins/com.objectlearn.jdt.j2ee/servers 文件夹下面,你可以用文本编辑器手工修改(除非你所用的服务器不在Lomboz默认的服务器中,否则我不推荐你这么做),也可以在Eclipse的属性对话框中设置,设置的过程非常简单,如下图所示:



记得每次修改以后,都要点击Apply。

上图是Properties标签下的设置,Classpath标签下一般不需要做任何改动(注意:如果你没有听我文章开始部分的劝告,使用了JBoss3.2.0以上的版本,可能需要手工加入多了个jar包,这是体力活,有些麻烦。我不知道这是不是JBoss的问题,具体操作我在下面会提一下)。

通过以上三个步骤,就完成了Lomboz对J2EE开发的支持和JBoss的配置。你可以进入文章的第二部分"使用Eclipse开发Web应用"了。

注意事项:

a.如果服务器不在默认服务器之列;

在ECLIPSE_HOME/plugins/com.objectlearn.jdt.j2ee/servers 文件夹下新建一个后缀名为server的文件,然后根据已有的server文件为模版,用文本编辑器编辑server文件。建立了一个新的server文件以后,也可以在Lomboz的属性页中进行相应的设置。

b. 如果使用了JBoss3.2.0版本。

打开Window>Preferences>Lomboz>ServerDefinitions,选择你的服务器,然后选择classpath标签,将如下的jar包加入到server library中:

JBOSS_HOME\lib\concurrent.jar 
JBOSS_HOME \lib\boss-system.jar
JBOSS_HOME \server\default\lib\jboss.jar 
JBOSS_HOME \server\default\lib\jpl-pattern.jar 
JBOSS_HOME \server\default\lib\jpl-util.jar 
JBOSS_HOME \server\default\lib\jnpserver.jar 
JBOSS_HOME \server\default\lib\jboss-transaction.jar

我的JBoss320.server文件中的全部内容在本文的最后部分呈现。

二、使用Eclipse开发Web应用

首先,打开File->New->Lomboz J2EE Project,创建一个名为TestJ2EE的J2EE Project。

点击Next,默认各种设置,点击Next,进入下一个对话框,在Targeted Server中加入已经配置好的服务器,如下图:

在Web Modules和EJB Modules中分别新建Web模块和EJB模块,在本例中,我们分别命名为MyWeb和MyEJB,然后点击Finish。这样,一个J2EE项目的框架就自动生成了。

在MyWeb模块下面,自动生成了两个jsp文件:index.jsp和error.jsp,以及WEB-INF文件下面的配置文件。我们可以在此基础上面添加自己的jsp文件和servlet,然后build project。

在Eclipse的工具栏上点击Lomboz J2EE project outliner的按钮:

这样,在Eclipse上就出现了Lomboz J2EE View,如下图所示:

由于我事先已经部署了另一个Web服务器:Tomcat,所以在MyWeb这个模块上面出现了它所绑定的这两个服务器,JBoss 3.0 All 旁边的红色标记表示它是默认的服务器。可以通过右击Web模块选择更改默认的服务器,如下图:

选择好服务器以后,在Lomboz J2EE View中右键单击服务器,选择运行服务器,等服务器启动好以后,右键单击Web模块,选择Deploy Module,这样就完成了Web模块在服务器上的部署。打开IE浏览器,键入http://127.0.0.1:8080/MyWeb,就可以看到自己开发的Web应用了。

这里有一点需要说明,如果采用Tomcat作为Web服务器的话,如果Web模块需要重新部署,则须重新启动Tomcat服务器,JBoss则不需要这么做。

注意事项:

如果从Eclipse中启动JBoss服务器的时候,遇到了这个问题:

Error occurred during initialization of VM 
java/lang/NoClassDefFoundError: java/lang/Object

一般遇到这个问题,可能是由于JRE没有设置好,请在Eclipse中的Preference对话框中,展开Java->Installed JREs,查看JRE是否设置好了;然后打开所开发的项目属性对话框,查看Java Build Path的library中是否有JRE System Library,没有的话,点击Add Library,添加JRE System Library。

三、使用Eclipse开发EJB

在第二部分"使用Eclipse开发Web应用"中,我们已经在TestJ2EE这个J2EE项目中添加了一个名为MyEJB的EJB模块。下面我们通过Lomboz EJB Creation Wizard向MyEJB模块中添加一个Session Bean。

点击File->New->Lomboz EJB Creation Wizard,或者右击MyEJB模块,选择New->Lomboz EJB Creation Wizard,显示出如下对话框:

在com.dino.testj2ee.myejb这个包下面创建一个名为MyEJB的Stateless Session Bean。完成以后,在TestJ2EE项目的src文件夹下面,出现了一个名为MyEJBBean.java的文件,右击这个文件,选择New->Lomboz EJB Method Wizard,可以给这个EJB添加各种方法。我添加了一个helloWorld方法,返回一个String类型。如下图所示:

然后,需要把MyEJB这个Session Bean添加到MyEJB这个模块上面:右击MyEJB.java,选择Lomboz J2EE…->Add EJB to Module,选择MyEJB,OK。

右击MyEJB模块,选择LombozJ2EE…->Generate EJB Classes,这样就在ejbsrc目录下面自动生成了下面几个文件:

MyEJBHome.java
MyEJBRome.java
MyEJBLocalHome.java
MyEJBLocal.java
MyEJBSession.java 
(MyEJBSession extends MyEJBBean)
MyEJBUtil.java

Build project以后,自动将模块打包完毕。接着就可以按照部署Web模块的步骤来部署EJB模块了。最后,我们建立一个应用程序来测试EJB。通过File->New->Lomboz EJB Test Client Wizard打开一个对话框,按下图填写:

完成以后,在src目录下面生成了TestMyEJB.java,在其中的testBean方法中加入测试代码:

System.out.println(myBean.helloWorld());

如果目前JBoss服务器已经启动,而且MyEJB模块已经部署的话,执行TestMyEJB,就会在Console窗口上显示出:

hehe, I can deploy EJB by Eclipse!

附录:JBoss320.server

ejbModules="true" webModules="true" earmodules="true"> 
type="directory" default="D:/jboss-3.2.0" /> 
type="string" default="127.0.0.1" /> 
type="string" default="8080" /> 
type="string" default="JBOSS32" /> 
type="directory" default="D:/jboss-3.2.0" /> 

${serverRootDirectory} 
${serverRootDirectory}/server/all/deploy 
${serverRootDirectory}/server/all/deploy 
${serverRootDirectory}/server/all/deploy 
org.jnp.interfaces.NamingContextFactory 
jnp://${serverAddress}:1099 
org.jboss.Main 
${serverRootDirectory}/bin 

-c all 
org.jboss.Shutdown 
${serverRootDirectory}/bin 

${serverAddress} ${serverPort} 

JDK_TOOLS 
${classPathVariableName}/bin/run.jar 
${classPathVariableName}/bin/shutdown.jar 
${classPathVariableName}/client/jboss-j2ee.jar 
${classPathVariableName}/server/all/lib/javax.servlet.jar 
${classPathVariableName}/lib/commons-httpclient.jar 
${classPathVariableName}/lib/concurrent.jar 
${classPathVariableName}/lib/getopt.jar 
${classPathVariableName}/lib/jboss-boot.jar 
${classPathVariableName}/lib/jboss-common.jar 
${classPathVariableName}/lib/jboss-jmx.jar 
${classPathVariableName}/lib/jboss-system.jar 
${classPathVariableName}/lib/jdom.jar 
${classPathVariableName}/lib/log4j-boot.jar 
${classPathVariableName}/lib/webdavlib.jar 
${classPathVariableName}/lib/xercesImpl.jar 
${classPathVariableName}/lib/xml-apis.jar 
${classPathVariableName}/server/all/lib/jnet.jar 
${classPathVariableName}/lib/gnu-regexp.jar 
${classPathVariableName}/server/all/lib/jboss.jar 
${classPathVariableName}/server/all/lib/jnpserver.jar 
${classPathVariableName}/server/all/lib/jpl-util.jar 
${classPathVariableName}/server/all/lib/jpl-pattern.jar 
${classPathVariableName}/server/all/lib/jsse.jar 
${classPathVariableName}/server/all/lib/jbossha.jar 
${classPathVariableName}/server/all/lib/jboss-jaas.jar 
${classPathVariableName}/server/all/lib/jts.jar 
${classPathVariableName}/server/all/lib/jboss-transaction.jar 
${classPathVariableName}/server/all/lib/javagroups-2.0.jar 
${classPathVariableName}/server/all/lib/jmxri.jar 
${classPathVariableName}/server/all/lib/jmxtools.jar 
${classPathVariableName}/server/all/lib/jbossmx.jar 


${classPathVariableName}/client/jboss-j2ee.jar 
${classPathVariableName}/client/jnp-client.jar 
${classPathVariableName}/client/jboss-client.jar 
${classPathVariableName}/client/jboss-common-client.jar 
${classPathVariableName}/client/jbosssx-client.jar 
${classPathVariableName}/client/log4j.jar 
${classPathVariableName}/client/jnet.jar 
${classPathVariableName}/client/jaas.jar

点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 1

    粉丝
  • 0

    好友
  • 1

    获赞
  • 51

    评论
  • 658

    访问数
关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-5 20:16 , Processed in 0.033394 second(s), 14 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部