『壹』 怎麼將web應用部署到tomcat中,tomcat是否需要配置環境變數
Tomcat部署Web應用方法總結
在Tomcat中部署Java Web應用程序有兩種方式:靜態部署和動態部署。
在下文中$CATALINA_HOME指的是Tomcat根目錄。
一、靜態部署
靜態部署指的是我們在伺服器啟動之前部署我們的程序,只有當伺服器啟動之後,我們的Web應用程序才能訪問。
以下3種方式都可以部署:(以PetWeb項目為例說明,PetWeb目錄假設是F:/PetWeb)
1.利用Tomcat自動部署
將PetWeb目錄拷貝到$CATALINA_HOME/webapps下,然後啟動伺服器就可以了,Tomcat啟動時將自動載入應用。
訪問地址如下:http://localhost:8080/PetWeb/
這種方式比較簡單,但是web應用程序必須在webapps目錄下。Tomcat的Webapps目錄是Tomcat默認的應用目錄,當伺服器啟動時,會載入所有這個目錄下的應用。
2.修改Server.xml文件部署
這種方式可以不必將PetWeb目錄拷貝到webapps下,直接在F:/部署。方法如下,更改$CATALINA_HOME/conf/server.xml文件,
找到以下內容:
Xml代碼:
1. <Context path
="/Pet" reloadable ="false" docBase
="F:/PetWeb" workDir ="d:/Mywebapps/emp" />
path:是訪問時的根地址,表示訪問的路徑;如上述例子中,訪問該應用程序地址如下:http://localhost:8080/Pet/
reloadable:表示可以在運行時在classes與lib文件夾下自動載入類包。其中reloadable="false"表示當應用程序中的內容發生更改之後伺服器不會自動載入,這個屬性在開發階段通常都設為true,方便開發,在發布階段應該設置為false,提高應用程序的訪問速度。
docbase:表示應用程序的路徑,注意斜杠的方向「/」。
docBase可以使用絕對路徑,也可以使用相對路徑,相對路徑相對於webapps。
workdir:表示緩存文件的放置地址
3.增加自定義web部署文件(推薦使用,不需要重啟Tomcat
)
這種方式和方法2差不多,但不是在Server.xml文件中添加Context標簽,而是在$CATALINA_HOME/conf/Catalina/localhost中添加一個xml文件,如Pet.xml.在Tomcat安裝目錄conf/Catalina
/localhost下,裡面有Tomcat自帶的三個應用,隨意復制其中的一個XML文件,然後修改docbase指向你自己的應用程序,並把文件名改名,各參數參見方法2中的<Context>標簽的參數,或者你也可以自己新建一個XML文件。(注意此文件名將作為Context中的path屬性值,不管文件里的path屬性值如何設置也是無效的
),將以下內容復制過去,修改相應路徑即可。
Xml代碼:
1. <Context path
="/Pet" docBase ="F:/PetWeb"
2. debug ="0"
privileged ="true" reloadable ="false"
>
3. </Context>
訪問地址如下:http://localhost:8080/Pet/
註: Web應用以.war文件的形式部署
可以將JSP程序打包成一個war包放在目錄下,伺服器會自動解開這個war包,並在這個目錄下生成一個同名的文件夾。一個war包就是有特性格式的jar包,它是將一個Web程序的所有內容進行壓縮得到。
我們剛才是將PetWeb文件夾部署在了伺服器中,我們知道可以將Web應用程序的內容打成.war包,然後在部署在伺服器上。打包請參考如下步驟:
1、打開命令提示符(cmd)
2、設置jdk環境變數
3、在命令提示符中進入項目文件夾F:/PetWeb後,鍵入如下命令:jar cvfPet.war */ .
(注意最後有個「. 」)。這樣在F:/PetWeb下應該有Pet.war文件。(也可以打包到指定的地方,命令如下:jar
cvf d:/Pet.war */.)
部署Pet.war文件非常簡單,將剛才xml文件中的docBase
="F:/PetWeb"更改為docBase ="F:/Pet.war"或者直接將其拷貝到webapps目錄下就可以。然後重新啟動伺服器就可以將Pet.war部署為一個Web應用程序了。
如果你夠細心的話你會發現,伺服器將Pet.war文件解開,並且在webapps下面又生成了一個Pet文件夾,然後把Pet.war的內容拷貝到裡面去了。我們可以通過以下方式取消自動解壓縮,將xml配置文件中的unpackWAR屬性設置為"false"
即可。
二、動態部署
動態部署是指可以在伺服器啟動之後部署web應用程序,而不用重新啟動伺服器。動態部署要用到伺服器提供的manager.war文件,如果在$CATALINA_HOME/webapps/下沒有該文件,你必須去重新下載tomcat,否則不能完成以下的功能。要想使用該管理程序必須首先編輯$CATALINA_HOME/conf/tomcat-users.xml文件,內容如下:(關於這個文件的更多內容,請參考
Java Web應用程序的安全模型二)
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<user username="coresun" password="coresun"roles="manager"/>
<user username="tomcat" password="tomcat"roles="tomcat"/>
<user username="both" password="tomcat"roles="tomcat,role1"/>
<user username="role1" password="tomcat"roles="role1"/>
</tomcat-users>
然後在瀏覽器中鍵入如下地址:http://localhost:8080/
,應該看到一個加菲貓了吧。點擊左邊的Tomcat Manager鏈接,提示輸入用戶名和密碼,本文都是coresun,然後可以看到以下頁面:
(1)Context Path(option):中輸入/Pet
(2)XML Configration file URL中要指定一個.xml文件,比如我們在F:/下建立一個Pet.xml文件,內容如下:<Context reloadable
="false" / >。docBase不用寫了,因為要在下一個文本框中填入。或者更簡單點,這個文本框什麼都不填。
(3)WAR or Directory URL:中鍵入F:/PetWet或者F:/Pet.war都可以,然後點擊Deploy按鈕,看看上面是不是已經看到了你web應用程序,名字就是你ContextPath(option):中的名字。
(4)如果你部署.war文件還有更加簡單的方式,下面還有個Select WAR file upload點擊瀏覽選擇.war文件,然後點擊Deploy也可以。
讓tomcat只運行conf/server.xml中指定的web應用
可以有以下2種辦法:
實現一:
1)將要部署的WEB應用放在webapps以外的路徑,
並在server.xml相應的Context 中的docBase指定.
2)刪除webapps中的所有文件夾,
以及conf/catalina/localhost下所有xml文件.
注: webapps是server.xml中的Host 元素的appBase屬性的值.
實現二:
修改server.xml中Host 元素的屬性,
添加或修改:
deployXML ="false"
deployOnStartup ="false"
autoDeploy ="false"
含義:
deployXML ="false"
: 不部署conf/catalina/localhost下的xml相應的WEB應用
deployOnStartup ="false"
:tomcat啟動時,
不部署webapps下的所有web應用
autoDeploy ="false"
:避免tomcat在掃描改動時,
再次把webapps下的web應用給部署進來.
註:
Tomcat中webapps目錄下不能直接存放網頁格式的文件,否則無法訪問到該文件,必須有子目錄才能訪問該網頁文件。
例如:我們直接將index.html放在webapps目錄中,通過瀏覽器http://localhost:8080/index.html是無法訪問到index.html的。而必須要webapps/petweb/index.html才可以通過http://localhost:8080/petweb/index.html訪問到index.html頁面。
『貳』 Eclipse IDE for Java EE Developers 新導入一個Web工程,怎樣部署運行
1.在myeclipse裡面,window菜單最後一個preferences,左邊點開myclispe,點servers下面找到tomcat,選擇tomcat版本,Tomcat Server 設置為enable,再選擇tomcat的路徑,OK。
2.在myclipse新建一個WEB項目,然後在下面可以寫jsp程序了,默認會有個index.jsp
3.點工具欄上的發布按鈕,點右邊的ADD,選擇剛才第一步建的tomcat,就會把項目發布到tomcat下面
4.啟動tomcat,在發布按鈕旁邊,是啟動按鈕,選擇創建的tomcat
5.在瀏覽器裡面輸入地址localhost:8080/myeclipse項目名稱/index.jsp
『叄』 javaweb項目如何部署上線
javaweb項目如何部署上線?步驟如下:
購買jsp空間和域名
進行雙向綁定,讓空間提供商綁定你的域名,讓域名提供商綁定jsp空間所在伺服器的IP.
『肆』 如何把eclipse 開發的web應用 用weblogic部署到 伺服器上
工具(集成開發工具)
jsp是在伺服器運行
所以,你只要有像tomcat,jboss,weblogic,resin這樣的web應用伺服器就可以運行jsp網頁
你的jsp網頁要放在項目裡面,將你的項目部署到伺服器上啟動伺服器就可以訪問jsp頁面了
tomcat的部署目錄是tomcat安裝目錄/webapps/
jboss的部署目錄是jboss安裝目錄/server/default/deploy/另外兩個不是太了解,你可以上網搜搜
在/bin/目錄下有個start.bat文件 運行就可以啟動伺服器
在地址欄裡面輸入這是訪問伺服器的根目錄,8080是tomcat和jboss的默認埠,想修改的話可以上網查查,或者看看有相關介紹的書籍。訪問你的項目就加入你的項目名稱比如就可以訪問了,jboos和tomcat都是基於java開發的免費web應用伺服器,所以前提是你的機子上要安裝有jdk環境,以保證伺服器的正常運行
最後說一句,我也是菜鳥^_^,但是根據你體的問題能判斷出來你不了解jsp是什麼東西,你還是現了解一下關於jsp的知識為好,呵呵,不是在給你泄氣啊。加油!!!
『伍』 web項目中如何在html目錄放放jsp文件,src放bean等。
jsp文件放在WebRoot目錄下或者在WebRoot目錄下建個文件夾放到裡面。been文件 建議你在src下創建pakage(以com.xx.xx命名)包,been文件放在 該包下;
『陸』 java web多個應用項目如何整合在一起
在不大規模改動代碼的情況下,我建議用開源的Yale CAS單點登陸。
我已基本實現了tomcat下Yale CAS配置「
相關文檔:
一、資源版本:
Tomcat5.0.28
cas-server-3.0.7
cas-client-2.0.11
二、Tomcat部署環境:
casserver——cas伺服器部署環境
casclient——cas客戶機部署環境(發布jsp-examples)
casclient1——cas客戶機部署環境(發布servlets-examples)
三、SSL文件准備:
server.keystore——伺服器端庫文件
client.keystore——客戶端庫文件
server.cer——伺服器端證書(自製)
client.cer——客戶端證書(自製)
cacerts——證書鏈
1、生成伺服器端庫文件
keytool -genkey -alias tomcat-server -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore
2、導出伺服器端證書
keytool -export -alias tomcat-server -storepass changeit -file server.cer -keystore server.keystore
3、生成客戶端庫文件
keytool -genkey -alias tomcat-client -keyalg RSA -keypass changeit -storepass changeit -keystore client.keystore
4、導出客戶端證書
keytool -export -alias tomcat-client -storepass changeit -file client.cer -keystore client.keystore
5、導入伺服器端證書到cacerts
keytool -import -trustcacerts -alias server -file server.cer -keystore cacerts -storepass changeit
6、導入客戶端證書到cacerts
keytool -import -trustcacerts -alias client -file client.cer -keystore cacerts -storepass changeit
將server.keystore、client.keystore、server.cer、client.cer、cacerts文件復制到cas伺服器、cas客戶機、cas客戶機1的TOMCAT_HOME主目錄及JAVA_HOEM\jre\lib\security目錄下。
四、Tomcat下cas安裝部署
1、casserver配置
採用jakarta-tomcat-5.0.28.zip解壓後默認配置,重點注意Server port="8005"
及Connector port="8080" redirectPort="8443"(cas客戶端需改埠號)。
A、 編輯.\casserver\conf目錄下server.xml文件並保存。
找到如下片段,紅色字體為新增內容。
<!-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
<Connector port="8443"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" debug="0" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="/server.keystore" keystorePass="changeit"/>
B、拷貝cas.war至.\casserver\webapps目錄。
至此,cas伺服器部署完畢。啟動伺服器,訪問https://localhost:8443如能顯示Tomcat首頁則表示cas部署成功。
2、casclient配置
jakarta-tomcat-5.0.28.zip解壓後修改根目錄名為casclient。
A、編輯.\casclient\conf目錄下server.xml文件並保存。
找到如下片段,紅色字體為修改內容。
<Server port="8006" shutdown="SHUTDOWN" debug="0">
<Connector port="8081"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8080" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" />
B、編輯.\casclient\webapps\jsp-examples\WEB-INF目錄下web.xml文件並保存。
加入如下片段,重點注意紅色字體部分。
<filter>
<filter-name>CASFilter</filter-name>
<filter-class>e.yale.its.tp.cas.client.filter.CASFilter</filter-class>
<init-param>
<param-name>e.yale.its.tp.cas.client.filter.loginUrl</param-name>
<param-value>https://localhost:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>e.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://localhost:8443/cas/proxyValidate</param-value>
</init-param>
<init-param>
<param-name>e.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>localhost:8081</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
C、將casclient.jar拷貝至.\casclient\webapps\jsp-examples\WEB-INF\lib目錄下。
至此,cas客戶端部署完畢。啟動客戶伺服器,訪問http://localhost:8081/jsp-examples正常情況會彈出安全警報,點擊確認後轉向cas登錄頁面。此時casserver採用默認驗證,用戶名、口令輸入相同的字元串即可,驗證通過後轉向jsp-examples應用的默認頁面。
3、casclient1配置
jakarta-tomcat-5.0.28.zip解壓後修改根目錄名為casclient1。
D、編輯.\casclient1\conf目錄下server.xml文件並保存。
找到如下片段,紅色字體為修改內容。
<Server port="8007" shutdown="SHUTDOWN" debug="0">
<Connector port="8082"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8080" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" />
E、編輯.\casclient1\webapps\servlets-examples\WEB-INF目錄下web.xml文件並保存。
加入如下片段,重點注意紅色字體部分。
<filter>
<filter-name>CASFilter</filter-name>
<filter-class>e.yale.its.tp.cas.client.filter.CASFilter</filter-class>
<init-param>
<param-name>e.yale.its.tp.cas.client.filter.loginUrl</param-name>
<param-value>https://localhost:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>e.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://localhost:8443/cas/proxyValidate</param-value>
</init-param>
<init-param>
<param-name>e.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>localhost:8082</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern> /servlet/*</url-pattern>
</filter-mapping>
將casclient.jar拷貝至.\casclient1\webapps\servlets-examples\WEB-INF\lib目錄下。至此,cas客戶端1部署完畢。啟動cas客戶1伺服器,訪問http://localhost:8082/servlets-examples/servlet/HelloWorldExample正常情況會彈出安全警報,點擊確認後轉向servlets-examples應用的HelloWorld頁面(此時由於cas客戶伺服器已經登錄,因此訪問servlets-examples時無需再進行登錄)。
cas伺服器、客戶端部署完成後即可實現統一認證服務。案例中把登錄認證部分的邏輯從jsp-examples、servlets-examples應用(此應用系統並無登錄邏輯,在實際應用中需修改相應的登錄驗證邏輯)中剝離,交由cas認證伺服器完成。
以上配置在windows XP professional上測試通過。