首页 | IT新闻 | 硬件 | 操作系统 | 开发 | 网络编程 | 数据库 | 热门框架 | 网络安全 | 组网 | 建站指南 | 网页制作 | 特效 | 实用技巧 | 服务器 | 办公 | QQ | 探索 | 社区

  • 技术部落
  • 部落首页 > 热门框架 > Eclipse平台应用 > 正文
  • Eclipse+Ant开发EJB的三个习惯
      2007-11-23  来源:David.Turing  编辑:Jsbulo  热度:

    EJB,如果只是使用Stateless EJB,那么,开发还是很简单的。下面介绍使用Eclipse和Ant开发EJB需要注意的三个方面。

    1、使用EJB,Ant是必不可少的工具,在Eclipse中,导入了WLHOME/server/lib下的weblogic.jar到Eclipse的Ant Classpath后,许多增强的Ant Task便随手可得,在Eclipse的Ant Viewer中开发EJB,也特别简单。

    在build.xml中加入wlcompile,wlappc。

    <taskdef name="wlcompile" classname="weblogic.ant.taskdefs.build.WLCompileTask"/>
    <taskdef name="wlappc" classname="weblogic.ant.taskdefs.j2ee.Appc"/>

    <!-- 编译产生所有的.ejb,并且产生相应的接口类  -->
    <target name="compile" depends="prepare">
    <wlcompile srcdir="$src}" destdir="${build.dir}" includes="${ejb.name}">
    <ejbgen source="${sourceVersion}" />
    <javac deprecation="${deprecation}" />
    <javac debug="${debug}" />
    </wlcompile>       
    </target>

    wlcompile太自动化了,根据你的ejb的bean的annotation自动生成ejb-jar.xml和weblogic-ejb-jar.xml(如果你使用了CMP,连weblogic-cmp-rdbms-jar.xml也是自动生成的),他们会放置于META-INF目录里面。另外,wlcompile也会根据你的@JndiName的Local和Remote接口生成weblogic-ejb-jar.xml的对应的JNDI名。

    基本上,初期调优的时候,你很依赖于weblogic-ejb-jar.xml,包括对initial-beans-in-free-pool,max-beans-in-free-pool,trans-timeout-seconds等等的设置。   

    wlappc是生成weblogic端的Impl class,这个基本不管我的事了。

     <!-- 产生Weblogic端的Stub实现类 -->
    <target name="build.ear" depends="compile">
    <wlappc source="${build.dir}" debug="${debug}" deprecation="${deprecation}" />
    </target>

    最后,把EJB的Bean以及实现类,plus生成的META-INF一同打包成一个jar文件,当然,这是winzip都可以做的事情。

     <!-- Jar出EJB包 -->
    <target name="EJB_JAR" depends="build.ear">
    <jar jarfile="mystatelessSession.jar"
    basedir="${build.dir}/${ejb.name}"
    update="yes">
    </jar>
    </target>

    2、充分利用weblogic的wldeploy方法,直接在Weblogic上部署和反部署(这几乎是不可或缺的)。

     <target name="deploy">    
    <wldeploy  action="deploy"
    verbose="true" debug="true"
    name="MYEJB" source="mystatelessSession.jar"
    user="weblogic" password="weblogic"
    adminurl="t3://localhost:7001" targets="AdminServer" /> 
    </target>

    <target name="undeploy">   
    <wldeploy  action="undeploy"
    verbose="true" debug="true"
    name="MYEJB"
    user="weblogic" password="weblogic"
    adminurl="t3://localhost:7001" targets="AdminServer" /> 
    </target>

    一般来说,抽取一些共同的特性,比如Weblogic的url,username,password到properties文件中,把一些通用的Ant Task抽取到一些公用的Ant Task文件去,然后用Ant Call来调用,可以让很复杂的Ant Build文件变得简单些,最后,把这些Ant Build文件做成模板(template),可以减少更多无谓的编辑时间。

    3、Eclipse中,建议创建EJB Project,因为这些Project可以让.ejb后缀的文件被Java Editor打开,起码那些EJB的Annotataion能够容易识别和编辑(自动化)。EJB Project其实是普通的Java Project多了EJB的Project facets。

    创建完Weblogic域之后,按照上述三点铺垫好Eclipse环境,接着就可以开发自己的EJB。