.安裝jboss
解壓jboss到一個目錄中如:/usr/local/jboss,然後添加"/usr/local/jboss"到路徑中,並設定jboss_home="/usr/local/jboss"
然後執行run.sh,開啟瀏覽器http://localhost:8080,如果有測試頁顯示,說明安裝成功!
在/root目錄下配置 .bash_profile 添加環境變數
在/usr/local/jboss/bin 運行 sh run.sh 啟動jboss伺服器
jboss基礎問題(jboss-4.0.1sp1)
1、解壓完畢後,應該產生如下目錄:
bin: 命令和指令碼
client: 用戶端jars
docs: jboss的文檔
lib: 伺服器端jars
server: 伺服器設定檔
2、jboss提供了3種伺服器配置:
1)minimal:最小配置,僅僅包括日誌,jndi服務和url部署掃描器,你可能會在一個不需要j2ee的應用中使用這種配置,或者以該配置為基礎自訂配置。
2)default:預設配置,包括除了rmi/iiop和叢集的所有j2ee服務。
3)all:這種配置包括所有的jboss服務。
3、啟動
為了啟動jboss,在windows下:
鍵入:cd %jboss_home%bin;
鍵入:run [-c default|minimal|all]。
在unix下:
鍵入:cd $jboss_home/bin;
鍵入:./run [-c default|minimal|all]。
如果jboss啟動成功,你應該可以看到以下輸出:
12:16:27,812 info [server] jboss (mx microkernel) [4.0.1sp1 (build: cvstag=jboss_4_0_1_sp1 date=200611270314)] started in 20s:429ms
一旦伺服器啟動成功,你就可以通過在瀏覽器中開啟http://localhost:8080/jmx-console/來驗證所有的j2ee服務是否都啟動了。這是jboss的管理台,它將顯示當前配置下jboss正在啟動並執行所有服務以及每個服務的詳細內容。
4、關閉
如果在windows的命令列視窗或者當前的unix shell下運行jboss,只需要簡單的按下ctrl+c即可關閉jboss。
如果在windows下不能看見命令列視窗:
開啟一個新的命令列視窗;
鍵入:cd %jboss_home%bin;
鍵入:shutdown -s或者shutdown --server=url
如果在unix shell的後台運行:
開啟一個shell;
鍵入:cd $jboss_home/bin;
鍵入:./shutdown -s或./shutdown --server=url
管理
JBoss通過一個基於Web的控制台管理,你只需在瀏覽器中鍵入:http://localhost:8080/jmx-console/即可。查看或更改某一服務的配置,只需簡單的點選連結。
通過控制台,你還可以使用一些服務的公開的方法,例如,關閉伺服器:
1)開啟控制台;
2)捲動到"jboss.system"選項;
3)點選連結"type=server";
4)捲動到"void shutdown()"選項;
5)點擊"Invoke"按鈕。
部署應用程式
在JBoss中部署應用程式是再簡單不過的了。簡單的複製你的應用程式打包檔案:.jar,.war或者.ear到伺服器預設的部署目錄下,如果JBoss正在運行,將檢測到檔案,自動解壓,然後裝載應用程式。
以下是將一個應用部署到一個預設的伺服器配置的例子,在Windows下:
複製rotmachine.ear到%JBOSS_HOME%/server/default/deploy
在Unix下:
複製rotmachine.ear到$JBOSS_HOME/server/default/deploy
在部署過程中,JBoss日誌將在控制台視窗輸出資訊並寫入日誌,記錄檔位於伺服器的配置目錄。如果部署成功,你應該可以看到以下資訊:
22:21:44,730 INFO [MainDeployer] Deployed package: file:/C:/jboss-3.2.1/server/default/deploy/rotmachine.ear
此外,如果你開啟JBoss的管理台,可以在"jboss.j2ee"類別下列出你的應用。
取消已部署的應用
取消已部署的應用程式比部署應用程式更簡單。只要簡單的從部署目錄中刪除相應的應用程式檔案,JBoss就會檢測到檔案已被刪除,然後取消已部署的應用。
取消部署一個應用時,JBoss日誌將在控制台視窗顯示資訊,並記錄到伺服器日誌。如果取消部署成功,你應該可以看到以下資訊:
22:59:41,500 INFO [MainDeployer] Undeployed file:/C:/jboss-3.2.1/server/default/deploy/rotmachine.ear
資料來源
如果你的應用程式將串連到資料庫,你可能需要為資料庫配置一個資料來源。以下是如何配置一個簡單的資料來源:
如果你使用的資料庫JDBC驅動沒有在伺服器的lib目錄中,複製驅動程式到此目錄,然後重新啟動JBoss。
為你的資料庫建立一個資料來源描述檔案,例如,oracle-ds.xml:
部署資料來源描述檔案,方法和部署應用程式相同。
以下是oracle資料來源的一個描述檔案樣本:
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<jndi-name>OracleDS</jndi-name>
<connection-url>jdbc:oracle:thin:@serverip:1521:DB</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<user-name>dev</user-name>
<password>secret</password>
</local-tx-datasource>
</datasources>
其它的資料來源描述檔案的樣本可以在JBOSS_HOME/docs/examples/jca中找到。
EJB
為JBoss建立EJB和其他任何J2EE應用伺服器一樣,但需要一個額外的JBoss使用的EJB部署描述檔案jboss.xml,以下是一個樣本:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jboss PUBLIC "-//JBoss//DTD JBOSS//EN"
"http://www.jboss.org/j2ee/dtd/jboss.dtd">
<jboss>
<enterprise-beans>
<session>
<ejb-name>Processor</ejb-name>
<jndi-name>ejb/Processor</jndi-name>
</session>
<entity>
<ejb-name>Data</ejb-name>
<jndi-name>ejb/Data</jndi-name>
</entity>
</enterprise-beans>
</jboss>
請注意,和其它J2EE伺服器不同,JBoss不需要產生存根檔案(stubs and skeletons),它能動態調用EJB。
用戶端
正如上文所說,JBoss不需要用戶端存根(stubs),你只需向用戶端提供以下介面:
EJB Home介面和Remote介面;
任何在用戶端和EJB間傳遞的對象;
一份JBOSS_HOME/client/jbossall-client.jar的檔案拷貝。
以下是串連已部署在JBoss中的EJB的樣本:
// 建立環境:
Hashtable env = new Hashtable();
env.put("java.naming.factory.initial",
"org.jnp.interfaces.NamingContextFactory");
env.put("java.naming.factory.url.pkgs",
"org.jboss.naming:org.jnp.interfaces");
env.put("java.naming.provider.url", "localhost");
// 建立名字上下文:
InitialContext context = new InitialContext(env);
// 尋找Home介面:
CipherHome home = (CipherHome)context.lookup("ejb/org/rotmachine/Cipher");
// 獲得Remote介面:
Cipher cipher = home.create();
一個樣本應用
為了協助你更好的瞭解JBoss,本文包含了一個名為RotMachine的應用程式,請參見資源連結。
RotMachine 是一個簡單的J2EE應用,包括一個EJB(Stateless Session Bean),一個Web用戶端和一個命令列(Command- line)用戶端。它使用JBoss的項目模板(Project Template),你可能需要上文提到的一些額外的開發工具。
如果要編譯RotMachine的源檔案,解壓檔案到一個指定的目錄中,在Windows下:
開啟一個命令提示字元視窗;
鍵入:cd (解壓目錄);
鍵入:ant deploy-server。
在Unix下:
開啟一個Shell;
鍵入:cd (解壓目錄);
鍵入:ant deploy-server。
要在命令列用戶端測試RotMachine,在Windows下:
開啟一個命令提示字元視窗;
鍵入:cd build/bin;
鍵入:run-client。
在Unix下:
開啟一個Shell;
鍵入:cd build/bin;
鍵入:./run-client.sh。
要在Web用戶端測試RotMachine,請開啟瀏覽器,輸入:"http://localhost:8080/rotmachine/index.jsp",在表單中輸入一些文本,點擊"Go!"按鈕