论坛首页 Java版 OO

使用eclipse开发WEB+EJB的问题

浏览 2097 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
最后更新时间:2008-02-15
本来我是用JBuilder开发WEB+EJB的项目的
现在公司要求全部转到eclipse平台上,因为对eclipse不太了解,所以遇到不少问题

我找了两套all-in-one,一套是LomboZ 3.2,一套是MyEclipse 5.5GA
一开始尝试过LomboZ 3.3和MyEclipse 6.0GA,问题更多,退到旧版本后相对顺利点

开发的要求是,WEB模块和EJB模块不打成一个EAR,因为需要分别发布到不同的SERVER上

现在的问题基本都是在打包上

第一,我采用Export方式打包EJB,但发现得到的JAR中只有项目中源代码编译后的class文件,没有将我用到的一些类库中的class打入jar中,比如我用到的log4j等,都没在jar中,这样在运行时自然会出错。MyEclipse中只有导出为jar,LomboZ中有个专门针对EJB的Export,但结果都是没有包入类库。现在我采用自己写ANT的build.xml解决了,有更简单快捷的方式吗?JBuilder中都是自动的。

第二,WEB项目中要调用EJB的业务方法,必然需要引用EJB项目中的一些类,我先采用在构建路径中加入对EJB项目的引用,WEB可以顺利编译。但导出为WAR时,却没包入EJB项目中的类,一个都没。我现在只好采用在EJB项目中用ant导出一部分WEB需要用到的类成为一个单独的jar,然后把这个jar加入到EJB项目中来完成WAR的打包。有更快捷的方法吗?

可能的话,最好能给我一个教程什么的,那最好了,网上的资料大多版本过久,根本对不上。LomboZ的官网有个视频教程,但那个教程最后会打包成EAR,而且没用到第三方类库,所以不太适应我的需求
   
最后更新时间:2008-02-15
你要读的书不是eclipse
而是:你所用的服务器的的使用说明书
比如我用的是webshpere那么找ibm红宝书看
如果用的是bea的weblogic那么对应的说明书(MS是叫白皮书)

每个厂家都遵守ejb的规则但没有一家一样的.
   
0 请登录后投票
最后更新时间:2008-02-18
我不认为问题是出在服务器上

实际上我用手写ANT完全可以打出我要的JAR和WAR
但每次手写都比较麻烦,容易出错
如果能用IDE内建的打包显然会更好
JBuilder自带的打包就很好用,难道Eclipse就不能帮我自动打包吗?
   
0 请登录后投票
最后更新时间:2008-02-18
flamencoxu 写道
我不认为问题是出在服务器上

实际上我用手写ANT完全可以打出我要的JAR和WAR
但每次手写都比较麻烦,容易出错
如果能用IDE内建的打包显然会更好
JBuilder自带的打包就很好用,难道Eclipse就不能帮我自动打包吗?

可以但是bug多多
   
0 请登录后投票
最后更新时间:2008-02-18
为什么在这个问题上和我绕呢?
我问的根本不是发布的问题
你又怎么知道我BUG多多呢?
   
0 请登录后投票
最后更新时间:2008-02-18
我用wsad都自己手动打包.....(ant)
那你说其它的能好到哪去呢?
   
0 请登录后投票
最后更新时间:2008-02-19
首先,你只是把你自己的EJB部分打了包,是没有lib的。而且有时候服务器里已经有同样的lib可以共享,所以得具体问题具体分析,不然很容易发生问题。
war包如果要远程调用ejb,必须有ejb对象的接口。
所以最好还是编写ant或者maven,然后在eclipse里执行。
   
0 请登录后投票
最后更新时间:2008-02-21
肯定是ant好啊,还有人认为ide好,真是奇怪。
   
0 请登录后投票
最后更新时间:2008-02-21
亲生体验,一定要用ant打
   
0 请登录后投票
最后更新时间:2008-02-21
1 把第三方的class和自己的class混在一起打包成jar,本身就是一个不太好的方式。还是应该把第三方的包放到相应的lib目录中。
2 可以使用WTP,其解决方式是建立3个工程,ejb,client,web,其中client工程放ejb的远程接口等web工程需要用到的类。发布和导出的时候,WTP会自动把client打成jar放到web工程的lib目录中。
   
0 请登录后投票
论坛首页 Java版 OO

跳转论坛:
JavaEye推荐