David.Turing's blog

           

          Eclipse+Ant開發EJB的三個習慣

          EJB,如果只是使用Stateless 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。

          ?

          ?

          ?

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

          評論

          # re: Eclipse+Ant開發EJB的三個習慣 2007-11-22 08:10 sitinspring

          做個記號先.  回復  更多評論   

          導航

          統計

          常用鏈接

          留言簿(110)

          我參與的團隊

          隨筆分類(126)

          隨筆檔案(155)

          文章分類(9)

          文章檔案(19)

          相冊

          搜索

          積分與排名

          最新隨筆

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 云阳县| 六枝特区| 嘉峪关市| 固阳县| 东丰县| 灵武市| 若尔盖县| 宁化县| 西青区| 海林市| 通江县| 贵德县| 讷河市| 云霄县| 铜陵市| 栖霞市| 永丰县| 汉川市| 漯河市| 兴山县| 赣州市| 西丰县| 策勒县| 牟定县| 梓潼县| 邹平县| 左权县| 永昌县| 安阳县| 托里县| 双鸭山市| 麻江县| 磐石市| 成都市| 富蕴县| 大名县| 阜宁县| 武平县| 安溪县| 邓州市| 靖安县|