JBOSS維護經驗(轉載)

chance2000發表於2006-04-08
一、設定控制檯登入視窗

安裝好jboss並啟動jboss後,在瀏覽器視窗的位址列裡鍵入[@more@]就可以瀏覽jboss的部署管理的一些資訊,預設情況下不鍵入任何使用者名稱和密碼就可以進入此頁面, 方便是方便,但真正使用起來還是有點安全隱患,因為不管任何人只要知道server的ip 都可以進去訪問。下面我們針對此問題對jboss進行配置,使得訪問jmx-console也必須 要知道使用者名稱和密碼才可進去訪問.
步驟:
1. 進入jmx-console.war,通常此目錄在{jboss_home}serverdefaultdeploy目錄下。
2. 編輯該目錄下的WEB-INFweb.xml,把部分註釋去掉
3. 編輯該目錄下的WEB-INFclasses的roles.properties和users.properties;其中
1) users.properties裡定義使用者名稱和密碼,格式為username=password。當然,可以依 照此格式新增多個使用者。
2) roles.propertie裡定義使用者名稱和角色,格式為username=role。這裡的role必須和web.xml裡的相對應。
4. 編輯WEB-INFjboss-web.xml,開啟部分註釋;這裡內容對應的security-domain對應{jboss_home}serverdefaultconflogin-config.xml這個jaas配置裡的某個application-policy。
如:
:/jaas/jmx-console
在login-config.xml裡對應有:


flag = "required" />


5.Ok!一切大功告成!重啟jboss,就會出現你想要的輸入username和password的 視窗

二、啟動與關閉JBOSS應用:
1. 啟動JBOSS應用:
l 雙擊桌面快捷方式。
l 開啟命令列視窗,進入 %JBOSS_HOME%bin,鍵入 run ,回車。
2.關閉JBOSS應用:
l 直接關閉JBOSS應用;
l 另外開啟一個命令列視窗,進入%JBOSS_HOME%bin,鍵入shutdown ?username=使用者名稱 -password=密碼,回車。

三、修改JBOSS應用連線的和埠:
1.在jboss?jboss-3.x---server---default---deploy下,ms-service.xml中:

jdbc:microsoft:server://localhost:1433;DatabaseName=Northwind

sa
1

其中:
①jdbc:microsoft:server://localhost:1433: SQL2000埠是1433,如果和WEB分裝於不同的機器,那麼localhost要改成的ip地址;
②DatabaseName=Northwind: 是Northwind,可以修改成另一個;
sa
使用的使用者名稱sa
1
與使用者名稱sa對應的密碼:1

注:當我們的、使用者名稱或密碼修改後,可在ms-service.xml修改相應的項即可。

2. 使用JBOSS中介軟體時,預設的訪問埠是8080.如何修改?
開啟JBOSS目錄--&gtjboss-3.0.8--&gtserver--&gtdefault--&gtdeploy--&gtjbossweb.sar--&gtmeta-inf下的jboss-service.xml,搜尋8080,將8080改為新的埠號,儲存,重啟應用即可.訪問時使用新的埠號.




10
100
30000
5000






四、其它設定
1.WAR的部署
JBoss支援熱部署,也就是war部署到上後不需要重新啟動JBoss(Tomcat不支這種特性)。war的部署很簡單,直接將war複製到JBossserverdefaultdeploy目錄下即可。
2.JBoss的目錄結構
bin:改目錄包含各種指令碼以及相關,前面已經用過run.bat和shutdown.bat兩個批處理。
client:儲存配置資訊和可能被Java客戶端應用或外部Web容器用到的jar。
docs:儲存在JBoss中引用到的XML和DTD(這裡也提供了在JBoss中如何寫配置的例子)。該目錄下有針對不通的(如MySql、Oracle、SQL Server、Postgres等)配置資料來源的JCA配置。
lib:這裡儲存執行JBoss微核心所需的jar。該目錄下不要儲存任何你自己的jar。
server:這裡的每一個子目錄對應著一個配置。該配置由執行指令碼時的引數"-c "來確定。在server目錄下有三個配置例子,即all、default和minimal,每一個配置安裝的服務都不一樣。其中default下是預設配置。
minimal:僅載入啟動JBoss所需的最少服務,如日誌服務、JNDI和URL部署掃描器(發現新的部署),不包含Web容器、EJB和JMS。
all:啟動所有的服務,包括RMI/IIOP、叢集服務和Web服務部署器(預設配置不會被載入)。
啟動JBoss時,如果run.bat不帶任何引數,則使用的配置是server/default目錄下的配置。如果要以其它目錄下的配置啟動JBoss,可以使用如下引數:
run -c all
上述命令將以all目錄下的配置資訊啟動JBoss。也可以在server目錄下新建目錄,按自己的需要寫配置。
下面以default目錄為例,介紹配置的目錄結構。
conf:該目錄下有指定核心服務的jboss-service.xml,也可以放其它服務配置的。
data:該目錄是JBoss內建的Hypersonic儲存資料的地方,也是JBossMQ(the JBoss implementation of JMS)儲存相關資訊的地方。
deploy:這是部署J2EE應用(jar、war和ear)的位置,只需將相應複製到該目錄下即可。該目錄也用來熱部署服務和JCA資源介面卡。已經有一些服務部署到這個目錄了,如jmx-console,你啟動JBoss後即可訪問。JBoss會週期性的掃描deploy目錄,當有任何元件改變,JBoss會重新部署該。
lib:存放配置所需的jar,比如,你可以將JDBC驅動放在該目錄下。
log:存放日誌資訊。JBoss使用Jakarta log4j包儲存日誌,在中你也可以直接使用該資訊。
tmp:儲存在部署過程中解壓時產生的臨時。
work:Tomcat編譯JSP時的工作目錄。
目錄data、log、tmp和work在JBoss安裝後並不存在,當JBoss執行時自動建立。
另外,連線所用到的JDBC驅動要複製到JBoss_HOMEserverdefaultlib目錄下。
3. JBoss中的部署
JBoss中的部署過程非常的簡單、直接並且支援熱部署。在每一個配置中,JBoss不斷的掃描一個特殊的目錄的變化:$JBOSS_HOME/server/config-name/deploy。
你可以把下列複製到此目錄下:
* 任何jar庫(其中的類將被自動新增到JBoss的classpath中)
* EJB JAR
* WAR (Web Appliction aRrchive) 注意預設情況下context為war名稱.
* EAR (Enterprise Application aRchive)
* 包含JBoss MBean定義的XML
* 一個包含EJB JAR、WAR或者EAR的解壓縮內容,並以.jar、.war或者.ear結尾的目錄。


附:如果你想要定義自己的目錄配置,可參照如下步驟:
根據JBOSS文件,我們可知道,實際上配置一個Server僅僅只需要將Default目錄下所有拷到一個新目錄下並重新命名就可以了,同時修改相應的一些中的引數就可以了。做如下約定:
1、 重新指定一個run.bat快捷方式 runJwfm.bat
複製一份/BIN目錄下的run.bat,並修改
"%JAVA%" %JAVA_OPTS% -classpath "%JBOSS_CLASSPATH%" org.jboss.Main %*為
"%JAVA%" %JAVA_OPTS% -classpath "%JBOSS_CLASSPATH%" org.jboss.Main ?c jwfm %*
2、修改相應引數
/Server/jwfm/conf 目錄下jboss-service.xml修改動態部署時間:
5000 將5000調整到800,特穩定後調回5000

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/802415/viewspace-825885/,如需轉載,請註明出處,否則將追究法律責任。

相關文章