积累,创造,分享!

BlogJava 首页 新随笔 联系 聚合 管理
  25 Posts :: 13 Stories :: 26 Comments :: 0 Trackbacks

          本文将不涉及EJB3.0的设计以及编码.
          主要内容是关于JBOSS下EJB3.0的第一个例子的配置与运行。
首先下载JBOSS4,并安装成功。目前JBOSS提供的ejb3有2种版本,一种是Embeddable(可嵌入),一种是直接运行。这些都可以在jboss的官方网站获得。
Embeddable版本的主要的好处是可以独立运行,方便测试,甚至无需部署在jboss环境当中,当然这是需要它提供的conf以及lib包里面的几个配置来支撑的。如果是在web应用当中运行,还需要将jboss-EJB-3.0_Embeddable_ALPHA_8\conf 里面的配置文件引入到web-inf\classes下的。
lib包里面的3个包也需要放在web-inf\lib下面。然后对web.xml进行修改,加上:
   <context-param>
      <param-name>jboss-kernel-deployments</param-name>
      <param-value>embedded-jboss-beans.xml, jboss-jms-beans.xml</param-value>
   </context-param>
   <listener>
      <listener-class>org.jboss.ejb3.embedded.ServletBootstrapListener</listener-class>
   </listener>
否则会报关于jndi方面的错误。

          前面提到的另一个版本则是需要基于JBOSS环境的完全版。它的配置相对于Embeddable来说更简单一些。   实际上针对这个版本的web应用当中调用EJB3 是无需任何额外配置的.
然而在此之前我走了一段弯路:
比如看到网上一些介绍性的文章当中提到需要将{jboss_home}\client 当中的一些包拷到web-inf\lib的下面,然后在初始化InitialContext时需要加上java.naming.factory.initial,java.naming.factory.url.pkgs等等的参数。这样反而会抛出CommunicationException: Receive timed out异常。实际上JBOSS都已经将初始化环境设置好了。
以下实例是web环境下调用jboss 下ejb3的客户端:
http://www.myjavaserver.com/~nighthawk/EJBClient.war
部署在jboss下的ejb3例子,以上2个客户端都是调用的它:
http://www.myjavaserver.com/~nighthawk/MyEJB.jar
web环境下调用Embeddable ejb的客户端的实例比较大,空间不够,不往上放了。
不过配置起来也很简单,只需将Embeddable版本当中的conf与lib包放在war包的classed与lib下即可。
以上例子均在jboss-4.0.4.GA下测试过。
                                                                                                                              ©2006 nighthawk.All rights reserved

posted on 2006-07-28 16:21 nighthawk 阅读(758) 评论(1)  编辑  收藏

Feedback

# re: 初识EJB3.0 ---配置与运行篇 2008-01-01 16:19 libol007
我现在就遇到了Receive timed out,该这么解决
initialContext = new InitialContext(properties);
properties里包含了你说的那几个设置,难道这些不用设置嘛?
我的客户端是桌面的  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: