David.Turing's blog

           

          Eclipse+Ant開發(fā)EJB的三個習(xí)慣

          EJB,如果只是使用Stateless EJB,那么,開發(fā)還是很簡單的

          1,玩EJB, Ant是必不可少的工具,Eclipse中,導(dǎo)入了WLHOME/server/lib下的weblogic.jar到Eclipse的Ant Classpath后,許多增強(qiáng)的Ant Task便隨手可得,在Eclipse的Ant Viewer中開發(fā)EJB,也特別簡單。

          在build.xml中加入wlcompile,wlappc

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


          ?? ? <!-- 編譯產(chǎn)生所有的.ejb,并且產(chǎn)生相應(yīng)的接口類? -->
          ?? ?<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太自動化了,根據(jù)你的ejb的bean的annotation自動生成ejb-jar.xml和weblogic-ejb-jar.xml(如果你使用了CMP,連weblogic-cmp-rdbms-jar.xml也是自動生成的),他們會放置於META-INF目錄里面。另外,wlcompile也會根據(jù)你的@JndiName的Local和Remote接口生成weblogic-ejb-jar.xml的對應(yīng)的JNDI名。

          基本上,初期調(diào)優(yōu)的時候,你很依賴於weblogic-ejb-jar.xml,包括對initial-beans-in-free-pool,max-beans-in-free-pool,trans-timeout-seconds等等的設(shè)置。
          ????

          wlappc是生成weblogic端的Impl class,這個基本不管我的事了。
          ????<!-- 產(chǎn)生Weblogic端的Stub實現(xiàn)類 -->
          ?? ?<target name="build.ear" depends="compile">
          ?? ??? ?<wlappc source="${build.dir}" debug="${debug}" deprecation="${deprecation}" />
          ?? ?</target>

          最后,把EJB的Bean以及實現(xiàn)類,plus生成的META-INF一同打包成一個jar文件,當(dāng)然,這是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來調(diào)用,可以讓很復(fù)雜的Ant Build文件變得簡單些,最后,把這些Ant Build文件做成模板(template),可以減少更多無謂的編輯時間。

          3,Eclipse中,建議創(chuàng)建EJB Project,因為這些Project可以讓.ejb后綴的文件被Java Editor打開,起碼那些EJB的Annotataion能夠容易識別和編輯(自動化)。EJB Project其實是普通的Java Project多了EJB的Project facets。

          創(chuàng)建完Weblogic域之后,按照上述三點鋪墊好Eclipse環(huán)境,剩下就是開發(fā)自己的EJB。

          ?

          ?

          ?

          posted on 2007-11-19 14:32 david.turing 閱讀(3964) 評論(1)  編輯  收藏 所屬分類: Java日積月累

          評論

          # re: Eclipse+Ant開發(fā)EJB的三個習(xí)慣 2007-11-22 08:10 sitinspring

          做個記號先.  回復(fù)  更多評論   

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(110)

          我參與的團(tuán)隊

          隨筆分類(126)

          隨筆檔案(155)

          文章分類(9)

          文章檔案(19)

          相冊

          搜索

          積分與排名

          最新隨筆

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 甘南县| 安吉县| 丹棱县| 扎鲁特旗| 乌审旗| 奉节县| 高碑店市| 广德县| 玉林市| 平定县| 农安县| 厦门市| 黑龙江省| 江阴市| 兴安盟| 南安市| 泗水县| 罗甸县| 元谋县| 武陟县| 蒙山县| 洛宁县| 高青县| 枣强县| 西昌市| 武义县| 白朗县| 石棉县| 广平县| 连城县| 科尔| 乌拉特中旗| 石家庄市| 瑞丽市| 吕梁市| 遂平县| 涿州市| 亳州市| 全南县| 孟州市| 浦城县|