作者: ELFer
2006-09-27 10:11
????JBoss中包含了幾種不同的服務(wù)器類型,以適應(yīng)不同的需求。下面就以JBoss-4.0.0為例簡要說明這幾種服務(wù)器的區(qū)別以及根據(jù)需要配置自己的服務(wù)器的方法。
??? 一、服務(wù)器的類型
??? 在JBoss的server目錄中包含了四個文件夾:all、default、standard和minimal,它們分別代表了JBoss自帶的四種類服務(wù)器。從字面就可以看出四種服務(wù)器的區(qū)別。具體如下:
??? minimal:這是JBoss最小化配置服務(wù)器,它包含了啟動JBoss所需要的最小化的服務(wù)。它啟動一個日志服務(wù)、一個JNDI服務(wù)器和一個用來發(fā)現(xiàn)新的發(fā)布內(nèi)容的URL發(fā)布掃描器。如果你想使用JMX/JBoss啟動你自己的服務(wù),而不是用任何J2EE的技術(shù),那么這個就是最佳選擇。它沒有web容器,不支持EJB或者JMX。
??? default:這是JBoss服務(wù)器的默認(rèn)配置,它包含大多數(shù)J2EE應(yīng)用程序所需要的標(biāo)準(zhǔn)服務(wù)。它不包括JAXR服務(wù)、IIOP服務(wù)和任何關(guān)于集群的服務(wù)。
??? all:這是JBoss服務(wù)器的完整配置,它包含了所有可用的服務(wù),像RMI/IIOP和集群服務(wù)這些在default配置中不支持的服務(wù)。
??? standard:這是JBoss服務(wù)器的標(biāo)準(zhǔn)配置。
??? 當(dāng)然,我們還可以配置屬于自己的服務(wù)器。
??? 二、服務(wù)器的啟動
??? 在%JBOSS_HOME%/bin下有一個run.bat,雙擊這個文件就可以啟動JBoss服務(wù)器,同時(shí)會發(fā)現(xiàn)在bin中還有一個run.sh和shutdown.sh,這是用來在UNIX和Linux中啟動和關(guān)閉服務(wù)器。除了這種方法以外,如果配置了環(huán)境變量,還可以在命令行直接輸入run來啟動服務(wù)器。以上的方式啟動的只是JBoss中default配置的服務(wù)器,如果要啟動別的服務(wù)器,可以使用:run -c all,這樣就會啟動all服務(wù)器。???
??? 三、配置自己的服務(wù)器
???? 在開發(fā)過程中,我們可以直接把自己的應(yīng)用程序放在需要的服務(wù)器中,但是為了保持原來的服務(wù)器,也為了使用的方便,通常的做法是將需要的服務(wù)器復(fù)制一份,命名為自己服務(wù)器的名字,例如myserver。像前面的啟動all服務(wù)器一樣,在命令行輸入:run -c myserver,就可以啟動myserver服務(wù)器。
??? 在%JBOSS_HOME%/bin中可以通過run.bat啟動default服務(wù)器,那么我們也可以在其中建立啟動自己服務(wù)器的bat文件。首先,復(fù)制run.bat,命名為myserver.bat(為了明白期間,一般將bat文件命名為和要啟動的服務(wù)器同樣的名字)。然后,打開myserver.bat,找到如下:
??????? "%JAVA%" %JAVA_OPTS% -Djava.endorsed.dirs=%JBOSS_ENDORSED_DIRS% -classpath "%JBOSS_CLASSPATH%" org.jboss.Main %*
在后面添加 -c myservser,如下所示:
??????? "%JAVA%" %JAVA_OPTS% -Djava.endorsed.dirs=%JBOSS_ENDORSED_DIRS% -classpath "%JBOSS_CLASSPATH%" org.jboss.Main %* -c myserver最后,保存退出,雙擊這個文件,就會啟動myserver服務(wù)器。
??? 四、端口號的修改
??? JBoss服務(wù)器在啟動過程會為每一個服務(wù)器指定一個端口號,例如HTTP是8080,但是有時(shí)可能一些端口已經(jīng)被占用,這時(shí)就會導(dǎo)致服務(wù)器啟動失敗。常見的一種情況,如果先后在同一臺機(jī)器上安裝了Oracle和JBoss,這時(shí)HTTP服務(wù)的8080端口就會被占用,啟動服務(wù)器時(shí)就會報(bào)錯。此時(shí)就要修改JBoss的默認(rèn)端口了。
??? 在當(dāng)前的服務(wù)器文件夾中,找到deploy\jbossweb-tomcat50.sar文件夾,例如:%JBOSS_HOME%\server\myserver\deploy\jbossweb-tomcat50.sar,這個文件夾下有一個server.xml,打開,會看到如下內(nèi)容:
???????
????????? ??????????? maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
??????????? enableLookups="false" redirectPort="8443" acceptCount="100"
??????????? connectionTimeout="20000" disableUploadTimeout="true"/>
這就指定了HTTP的端口為8080,將8080修改為其他沒有使用的端口,例如8000,保存。再啟動時(shí)就會發(fā)現(xiàn)端口號已經(jīng)更改。
??? 關(guān)于端口的占用問題,有時(shí)先啟動BT下載,再啟動JBoss時(shí)就有可能報(bào)端口被占用的錯誤,這時(shí)先退出BT,待JBoss完全啟動后再打開BT就可以了。