數據源
若是你的應用程序將鏈接到數據庫,你可能須要爲數據庫配置一個數據源。如下是如何配置一個簡單的數據源:
若是你使用的數據庫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
<?xml version="1.0" encoding="UTF-8"?>
<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>
請注意,和其它J2EE服務器不一樣,JBoss不須要生成存根文件(stubs and skeletons),它能動態調用EJB。
客戶端
正如上文所說,JBoss不須要客戶端存根(stubs),你只需向客戶端提供如下接口:
u EJB Home接口和Remote接口;
u 任何在客戶端和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下:
u 打開一個命令提示符窗口;
u 鍵入:cd (解壓目錄);
u 鍵入:ant deploy-server。
在Unix下:
u 打開一個Shell;
u 鍵入:cd (解壓目錄);
u 鍵入:ant deploy-server。
要在命令行客戶端測試RotMachine,在Windows下:
u 打開一個命令提示符窗口;
u 鍵入:cd buildin;
u 鍵入:run-client。
在Unix下:
u 打開一個Shell;
u 鍵入:cd build/bin;
u 鍵入:./run-client.sh。
要在Web客戶端測試RotMachine,請打開瀏覽器,輸入:「[url]http://localhost:8080/rotmachine/index.jsp[/url]」,在表單中輸入一些文本,點擊「Go!」按鈕。
參考資源
u JBoss/QuickStart-30x.pdf?download">JBoss 3.0 Quick Start。