paulwong

          tomcat 和 jboss的熱部署(熱發布)問題

          所謂的熱部署(熱發布)(下面稱為“熱部署”),就是說,在web工程發布之后,不可避免的,會遇到修改BUG的問題。現在的熱部署就是為了解決這個問題,其功能就是說:在不停止web服務的同時,對jsp和java類進行修改,修改后的效果同時還能夠在頁面上顯示出來。節省了調試時間,提高了效率。不過,修改配置文件是個例外,如果對配置文件做修改,一定要重啟web服務。

          常用的web服務器一般為tomcat和jboss,現一一做介紹。

          1.tomcat熱部署
          在tomcat中支持熱部署有兩種方式(在原理上來說,這兩種方式是一致的,只是放的位置不同)
          a)在catalina_base\conf\catalina\localhost\中依照manager.xml定義一個xml文件,比如我的項目稱作sodoperation,我們就可以寫一個sodoperation.xml,內容如下:

          <context path="/sodoperation" docBase="d:\myportal\sodoperation\src\webapp"/>

          其中,path指的是你在tomcat中的項目名稱,就像manager一樣,docBase是指你的項目所在的web目錄。一直到歡迎頁面為止(也就是web-inf的前一個目錄)。但是一般來說,這個目錄中最好不要有中文,如果有的話,可以在文件開始加入
          <?xml version='1.0" encoding='utf-8' ?>來試一下,即整個文件變為:
          <?xml version='1.0" encoding='utf-8' ?>
          <context path="/sodoperation" docBase="d:\myportal\sodoperation\src\webapp"/>

          這樣就可以了,如果用這種廣告,同時使用myeclipse的部署的話,輕易不要remove,這樣會使文件都會被刪掉,不能持久。所以,建議使用第二種方法。

          b)第二種方法和第一種方法在原理上是一致的,其區別就是位置的不同,這次在catalina_base\conf下的server.xml,在文件末加入:
          <context path="/sodoperation" docBase="d:\myportal\sodoperation\src\webapp"/>

          解釋和上面一樣,這種方法在啟動tomcat后,會在catalina_base\conf\catalina\localhost\中加入一個與第一種方法的文件。這樣保證,只要對server.xml不做修改,你可以隨便對新生成的文件刪除,對熱部署沒有任何問題

          2.jboss熱部署
          在jboss中做熱部署也有兩種方法,因為jobss集成了tomcat,也可以說這兩種方法是在jobss上的一個修改。
          a)修改
          /opt/jboss4.3/jboss-as/server/node1/deploy/jboss-web.deployer/context.xml

          <Context cookies="true" crossContext="true" antiResourceLocking="true" antiJARLocking="true">
          <Manager pathname=""/>
          <InstanceListener>org.jboss.web.tomcat.security.RunAsListener</InstanceListener>
          </Context>

          加上
          antiResourceLocking="true" antiJARLocking="true",重啟jboss,再用myeclipse Redeploy project的時候就不需要重啟,部署完了直接開瀏覽器預覽啦

          posted on 2012-02-29 14:46 paulwong 閱讀(2417) 評論(1)  編輯  收藏 所屬分類: JBOSS

          Feedback

          # re: tomcat 和 jboss的熱部署(熱發布)問題[未登錄] 2013-05-28 16:31 test

          TM的搜索的幾個版面都是同樣的內容,但我的jboss里面沒有對應的內容,  回復  更多評論   


          主站蜘蛛池模板: 浦北县| 博白县| 林口县| 茌平县| 光泽县| 伊金霍洛旗| 襄垣县| 宁乡县| 大荔县| 石台县| 南城县| 威远县| 盘山县| 邹城市| 永善县| 拉萨市| 乌兰县| 保山市| 汉源县| 汉中市| 射洪县| 平南县| 利川市| 屯留县| 河源市| 朝阳县| 大城县| 遂宁市| 五寨县| 理塘县| 伊金霍洛旗| 武义县| 丹寨县| 通化县| 郓城县| 通江县| 永德县| 普洱| 白山市| 兖州市| 定陶县|