日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

Tomcat V6 Examples移植到Apusic V5.1

發布時間:2023/11/27 生活经验 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Tomcat V6 Examples移植到Apusic V5.1 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目標:將Tomcat V6的的例子Examples移植到Apusic V5.1上

術語:
Tomcat:只提供了WEB容器的開源服務器;
Apusic:提供了完整的J2EE支持的商用服務器;
%TOMCAT_HOME%:Tomcat安裝目錄
%APUSIC_HOME%:Apusic安裝目錄

準備:
在http://java.sun.com下載JDK V1.5以上的版本并安裝,確認JAVA_HOME正確指向裝好的JDK目錄;
在http://tomcat.apache.org下載Tomcat V6以上的版本并安裝;
在http://www.apusic.com下載Apusic V5.1以上的版本并安裝;

過程:
1. 執行%TOMCAT_HOME%/bin/startup.bat,訪問例子Examples:http://localhost:8080/jsp,確認Tomcat和Examples成功安裝,在窗口模式下按Ctrl+C停止服務器;
2. 執行%APUSIC_HOME%/domains/mydomain/bin/startapusic.cmd,訪問主頁:http://localhost:6888/,確認Apusic已經成功安裝,在窗口模式下按Ctrl+C停止服務器(記住因為是批處理還需要按Y確認);
3. 找到%TOMCAT_HOME%/webapps/examples目錄,將examples目錄拷貝到%APUSIC_HOME%/domains/mydomain/applications/下,重新啟動Apusic,稍等一會待Apusic自動部署,應用報錯:java.lang.NoClassDefFoundError: org/apache/catalina/CometProcessor,這個錯誤是因為應用中使用了Tomcat內核的API(非J2EE規范),雖然編寫這樣的應用違背J2EE規范(JBoss和Resin也這樣做過),但是既然應用已經這樣使用必須想辦法支持。
4. 一種方法是找出應用代碼中的部分進行修改,很遺憾我沒有找到;另一種就是把那個需要引用的類所在的catalina.jar文件拷貝到%APUSIC_HOME%/domains/mydomain/lib目錄下,先停止Apusic應用服務器,然后重新啟動。
5. 稍等一下,Apusic自動部署了examples應用,現在訪問例子:http://localhost:6888/examples/
6. 哇,成功了。就這么簡單就可以完成Tomcat應用到Apusic應用的移植。
總結:Apusic是個符合J2EE規范的應用服務器,在Tomcat上開發的應用都可以非常簡單的移植到Apusic上。并且Apusic同樣支持WAR包(WEB模塊)的直接部署。

備注:
0. 訪問http://localhost:6888/examples/jsp/jsp2/el/basic-arithmetic.jsp出錯了,為什么?
?因為J2EE規范中除0是必須拋出錯誤,而Tomcat則沒有遵守規范操作,請開發者注意。
?當然,完美主義者還是希望看到正常顯示的頁面,那么請把這個文件中的3/0替換成3/4就可以了。
1. 打開examples應用的lib目錄,會發現里面還有兩個jar文件:jstl.jar和standard.jar,這是支持Standard Library用的,其實Apusic已經自帶無須他們,現在停止Apusic服務器,再刪除這兩個JAR包,然后重新啟動Apusic服務器,應用果然可以正常運行;
2. 移植時把catalina.jar全部拷過來了,里面包含了Tomcat對WEB容器的部分實現,那么肯定會疑慮系統到底在調用誰的實現呢?為了確認我們可以將Apusic服務器停止,用WINRAR打開catalina.jar文件,把里面與Comet無關的class全部刪除,再重新啟動Apusic服務器,應用仍然可以正常運行,現在沒有疑慮了;
3. 為什么每次都需要停止服務器才能操作lib里面的JAR文件呢,難道Apusic不支持熱部署?
Apusic當然支持熱部署,將Examples直接拷貝到applications目錄下其實就是熱部署,你甚至可以在Apusic啟動完成后再執行拷貝也可以。但是應用一旦被加載進應用服務器后,所有的jar文件全部會被鎖定,以便保證應用的完整性,所以修改lib下的jar文件必須將應用服務器重新啟動。
4. 建議不要部署壓縮文件,而是部署將應用展開后的目錄,因為對于壓縮文件應用服務器啟動時還需要一個解壓過程,降低啟動速度消耗系統資源;
5. 如何在Apusic上給WEB模塊配置上下文呢?
?現在打開%APUSIC_HOME%/domains/mydomain/config/server.xml可以看到新部署的examples的說明:?
<application name="examples" base="applications/examples" start="auto"/>,因為examples不是標準的J2EE應用,導致WEB模塊中沒有指定上下文,因此可以使用name來指定上下文,比如:
<application name="Apusic-examples" base="applications/examples" start="auto"/>就把應用的上下文換成apusic-examples了,訪問自然也變成了http://localhost:6888/apusic-examples,簡單吧!

轉載于:https://www.cnblogs.com/zhuyx/archive/2008/07/07/10401963.html

總結

以上是生活随笔為你收集整理的Tomcat V6 Examples移植到Apusic V5.1的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。