wm2395的空间

我们一直在努力....

Tomcat的Web工程调用JBoss的EJB

标签: EJB Tomcat JBoss

 花费了将近一天的时间来调试,部署工程。最后是调试过关了,但回头一想总结一下,才得到这些东西: 

  这是在用EJB开发的Project在不同的容器下面进行部署时,遇几个问题,大家看了给发表发表意见。

大体的意思就是:Tomcat的Web工程调用JBoss的EJB工程,就是一个整体project的客户端部署到Tomcat6.0下面,而服务器端(ejb端)部署到JBoss5下面。但是问题出现多多,最常见的问题是1.javax.naming.NamingException...

2.javax.naming.CommunicationException...

3.javax.naming.reference.....

4. java.long.ClassNotFoundException...

5.$ProxyXX  cannot be cast to XXXX class

这些异常都是放到JBoss5容器下 遇到的,当我把一模一样的project放到 JBoss4 容器下时,这些问题全不见了,问题是就是在我用同样的jboss\client的jar文件(此时的jar都是JBoss4里面的)。,放到不用版本(JBoss4,JBoss5)的容器下面导致的,这个可以理解。但是有个重大的发现就是为什么jboss4的jobossall-client.jar是4,782KB而jboss5的jobossall-client.jar仅仅才有2KB,这时候我就找到原因了,JBoss5里面的jobossall-client.jar没有东西,只有一个MANIFEST.MF文件,替他的什么都没有。我猜想到是因为这个jar文件的原因导致的,因为能顺利的在JBoss4下面部署访问,所以肯定一点就是写的代码没问题!为了尽快的排除这些Exception,我就一气之下把JBoss5\client下的所有jar文件都导入到了客户端的工程里面,这样所有异常都排除了。但是这样的加入jar包总觉得很不明智,是蛮干的做法,但是又很难分析出用JBoss5到底加那几个jar包。。。。。
       可以总结出一点,就是JBoss4和JBoss5中的jobossall-client.jar完全不同了,但是我到现在为止还没总结出JBoss5 的jobossall-client.jar为什么要这么改进?感觉还没有JBoss4 好用呢。所以,那位高手对这方面了解就给我这个初学EJB的小生指点一下,多谢多谢!

附件:



    分享: 收藏到CSDN 收藏到javaeye 收藏到博客园 收藏&分享
  • 浏览 (1273)
  • 评论 (1)
  • 发表于 2009-04-28 15:35
  • EJB系列
    评分: 请先登录再投票,同一篇博客一月只能投票一次!
    无人投票

评论

游客 2010-9-24 12:42:25  
很早以前也遇到这个问题,一大堆的包全部引用很烦,在网上搜了很久,今天终于自己解决了。爽爽。。。 用压缩工具打开 JBoss 5 client中的jbossall-client.jar包,把readme.txt考出来,然后按照里面列出的jar包,把 client目录对应的文件考到一个自己建的 jboss5.1.0-ejb3-client-lib文件中,总计大小不超过 8M,想要瘦身的jboss 5客户端就ok,在客户端的工程中引用自己的jboss客户端,搞定了。

发表评论

验证码:
关注此文的人们还关注