日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

jboss4.0安裝及duke‘s bank部署心得

 不會(huì)游泳的魚 2006-01-24
hasek 2005-12-07 14:35
早幾天下載了下jboss的最新版本4.03sp1(http://www./),感覺還不錯(cuò),順便根據(jù)提供的
《Getting Started with JBoss 4.0》指南,部署了下duke’s bank 銀行例子,感受下用j2ee部署一個(gè)完整應(yīng)用的經(jīng)歷,對(duì)于想步入j2ee的初學(xué)者而言,感受下這種經(jīng)歷是有幫助,此次實(shí)例的應(yīng)用不涉及j2ee代碼編寫,不過可以給初學(xué)者對(duì)j2ee部署有個(gè)感性的認(rèn)識(shí)。

準(zhǔn)備工作:
jdk肯定是必須先有的啊,最好設(shè)置好Java_home變量
  1.jboss4.03sp3應(yīng)用服務(wù)器(http://www./)下載
2.j2ee-1_4-doc-tutorial_2.zip(http://www./)具體地方大家主動(dòng)搜索吧;-)關(guān)鍵點(diǎn):一定要是這個(gè)版本的tutorial,要不然部署就不會(huì)成功
  3.jbossj2ee-src.zip(這個(gè)比較難找,我提高網(wǎng)址給大家)
http://wiki./wiki/attach?page=ClusteringDemoUsingDukesBankJ2EE1.4%2Fjbossj2ee-src.zip
  4.ant軟件(http://www./)自己在那個(gè)網(wǎng)站上下載吧,不提供現(xiàn)成的給大家,免得你們太依賴了;-)最新版本的是1.65的,解壓就ok了,為了方便,在環(huán)境變量里面設(shè)置好path。

開始步驟

1、 將j2ee-1_4-doc-tutorial_2.zip解壓,出現(xiàn)j2eetutorial14 目

錄,所有的Duke 銀行應(yīng)用代碼位于examples/bank子目錄中。然后正常解壓jbossj2ee-src.zip,注意解壓到j(luò)2eetutorial14目錄下,出現(xiàn)覆蓋提示時(shí) 不用管它,選擇是就可以了,然后用戶將在這個(gè)目錄下看到一個(gè)看到j(luò)boss-build.properties文件。在構(gòu)建Duke 銀行應(yīng)用之前,用戶需要設(shè)置如下信息。即,編輯j2eetutorial14 目錄中的
jboss-build.properties 文件,以定位JBoss 4.0.2 的安裝目錄。其中,需要將jboss.home 屬性定位到JBoss 4.0.2 安裝的完整路徑。則用戶需要設(shè)置如下信息。(藍(lán)色部分修改為你們jboss服務(wù)器安裝路徑)

QUOTE:
# Set the path to the JBoss directory containing the JBoss application server
# (This is the one containing directories like "bin", "client" etc.)

jboss.home=E:/Program Files/jboss-4.0.3SP1(此處特別小心,斜杠一定是這樣打才行哦,用 \ 這個(gè)斜杠 ant的時(shí)候出現(xiàn)問題)jboss.server=${jboss.home}/server/default
jboss.deploy.dir=${jboss.server}/deploy


2、 編譯Java 源文件

打開命令行,然后轉(zhuǎn)到j(luò)2eetutorial14/exampe/bank 目錄。所有的Ant 構(gòu)建命令都是在此執(zhí)行的。編譯工作非
常直觀,即敲入如下命令,以調(diào)用compile 目標(biāo)。

QUOTE:
ant -f jboss-build.xml compile


如果沒有出現(xiàn)錯(cuò)誤,則用戶將發(fā)現(xiàn)新創(chuàng)建的build 目錄,其中包含了.class 文件。

3、打包EJB

該應(yīng)用含有一EJB jar,即bank-ejb.jar。bank-ejb.jar 含有代碼和描述符(ejb-jar.xml 和
jboss.xml),以用于實(shí)體Bean 和與客戶交互的控制會(huì)話Bean。Ant 目標(biāo)package-ejb 將會(huì)把
創(chuàng)建的bank-ejb.jar 存放到j(luò)ar 目錄。

QUOTE:
ant -f jboss-build.xml package-ejb


4、 打包WAR 文件

下個(gè)Ant 目標(biāo)是提供前端支持的Web 應(yīng)用,從而實(shí)現(xiàn)用戶與業(yè)務(wù)組件(EJB)的交互。
其中,src/web 目錄含有的Web 資源(JSP、圖片、等等)原封不動(dòng)地添加到存檔中。Ant war
任務(wù)也能夠添加WEB-INF 目錄,Web 瀏覽器并不能直接與該目錄中的內(nèi)容進(jìn)行交互,但是
其內(nèi)容是Web 應(yīng)用的組成部分。Web 應(yīng)用具體包含的內(nèi)容有部署描述符(web.xml 和
jboss-web.xml)、類文件(比如,Servlet 和EJB 接口)、其他WAR 要求的庫和JSP 標(biāo)簽庫描
述符。Ant 目標(biāo)package-web 能夠構(gòu)建Web 客戶,即WAR 文件。

QUOTE:
ant -f jboss-build.xml package-web


5、 打包Java 客戶

除了Web 界面外,還存在單獨(dú)運(yùn)行的Java 客戶應(yīng)用,用于管理顧客和賬號(hào)。使用Ant
目標(biāo)package-client 如下:

QUOTE:
ant -f jboss-build.xml package-client


其生成的app-client.jar 文件含有application-client.xml 和jboss-client.xml 描述符。另外,
還包括jndi.properties 文件。同時(shí),客戶JAR 文件也將包含在EAR 文件中,以作為附加的
模塊。

6、集成EAR

EAR 文件是完整的應(yīng)用,即含有3 個(gè)EJB 模塊和1 個(gè)Web 模塊。而且,它還必須包含
application.xml 描述符。當(dāng)然,可以單獨(dú)部署EJB 和Web 應(yīng)用模塊,但是EAR 提供了單一
的、便于操作的部署單元。Ant 目標(biāo)assemble-app 將創(chuàng)建JBossDukesBank.ear。

QUOTE:
ant -f jboss-build.xml assemble-app


7、數(shù)據(jù)庫

在部署應(yīng)用之前,用戶需要完成其數(shù)據(jù)庫配置。如果應(yīng)用中使用了CMP,則可以通過
配置CMP 引擎,使得在部署時(shí)自動(dòng)創(chuàng)建表。否則,用戶需要?jiǎng)?chuàng)建SQL 腳本。對(duì)于存在初始
化數(shù)據(jù)的DB 而言,手工創(chuàng)建表也是較好的辦法。

7.1、 啟用HSQL MBean 和TCP/IP 連接

HSQL 數(shù)據(jù)庫能夠以如下兩種方式運(yùn)行:進(jìn)程內(nèi)或客戶-服務(wù)器(HSQL 文檔稱之為,服
務(wù)器模式)。由于用戶需要使用能夠連接到DB 的工具,以運(yùn)行SQL 腳本,因此必須保證數(shù)
據(jù)庫以客戶-服務(wù)器模式運(yùn)行,并能接受TCP/IP 連接請(qǐng)求。默認(rèn)時(shí),最新的JBoss 發(fā)布版將
客戶-服務(wù)器模式禁用了,這主要考慮到安全性要素,因?yàn)槿绻J(rèn)登陸賬號(hào)沒有修改將導(dǎo)
致安全性問題。因此,用戶需要打開設(shè)置了默認(rèn)數(shù)據(jù)源的deploy/hsqldb-ds.xml 文件。在文
件的開始部分,能夠看到connection-url 元素。其取值必須是

QUOTE:
jdbc:hsqldb:hsql://localhost:1701,
而且其他connection-url 元素值必須注釋掉。
<!-- The jndi name of the DataSource, it is prefixed with java:/ -->
<!-- Datasources are not available outside the virtual machine -->
<jndi-name>DefaultDS</jndi-name>
<!-- for tcp connection, allowing other processes to use the hsqldb
database. This requires the org.jboss.jdbc.HypersonicDatabase mbean. -->
<connection-url>jdbc:hsqldb:hsql://localhost:1701</connection-url>
<!-- for totally in-memory db, not saved when jboss stops.
The org.jboss.jdbc.HypersonicDatabase mbean is unnecessary
<connection-url>jdbc:hsqldb:.</connection-url>
-->
<!-- for in-process db with file store, saved when jboss stops. The
org.jboss.jdbc.HypersonicDatabase is unnecessary
<connection-url>jdbc:hsqldb:${jboss.server.data.dir}/hypersonic/localDB
</connection-url>
-->
然后,定位到文件的底端部分,用戶應(yīng)該可以找到Hypersonic 服務(wù)的MBean 聲明。
<mbean code="org.jboss.jdbc.HypersonicDatabase" name="jboss:service=Hypersonic">
<attribute name="Port">1701</attribute>
<attribute name="Silent">true</attribute>
<attribute name="Database">default</attribute>
<attribute name="Trace">false</attribute>
<attribute name="No_system_exit">true</attribute>
</mbean>
用戶必須確保,這部分內(nèi)容沒有被注釋掉,因此JBoss 才能夠正確地啟動(dòng)DB


7.2、 創(chuàng)建數(shù)據(jù)庫模式

用戶通過sql 目錄能夠找到適合HSQL 的SQL 腳本。其中,jboss-build.xml 中的數(shù)據(jù)庫
任務(wù)能夠同HSQL 數(shù)據(jù)庫進(jìn)行交互。如果還未運(yùn)行JBoss,則請(qǐng)立即啟動(dòng)它吧,這樣才能使
用數(shù)據(jù)庫。
首先,可以使用Ant 目標(biāo)db-create-table 創(chuàng)建所需的表。

QUOTE:
ant -f jboss-build.xml db-create-table


然后,運(yùn)行db-insert 目標(biāo),以初始化所需的數(shù)據(jù)。

QUOTE:
ant -f jboss-build.xml db-insert


最后,如果上述過程很順利,則使用Ant 目標(biāo)db-list 能夠?yàn)g覽到部分?jǐn)?shù)據(jù)。其中,db-list
目標(biāo)列舉出了某特定賬號(hào)的交易信息。

QUOTE:
ant -f jboss-build.xml db-list


7.3 HSQL 數(shù)據(jù)庫管理工具

另外,如果用戶啟動(dòng)JMX 控制臺(tái)Web 應(yīng)用,能夠在域名jboss 下看到service=Hypersonic
鏈接。

通過單擊上述鏈接,用戶能夠使用到Hypersonic MBean 服務(wù)提供的HSQL 數(shù)據(jù)庫管理
功能。具體步驟如下:將屏幕滾動(dòng)到頁面底端,然后單擊用于startDatabaseManager()操作的
invoke 按鈕,進(jìn)而啟動(dòng)了HSQL 管理器,即用戶能夠直接操作數(shù)據(jù)庫的、基于圖形用戶界
面的Java 應(yīng)用。

8、部署應(yīng)用

部署基于JBoss 的應(yīng)用很簡單,用戶只需要將EAR 文件拷貝到deploy 目錄即可。通過
Ant 目標(biāo)deploy 能夠完成應(yīng)用的部署工作。

QUOTE:
ant -f jboss-build.xml deploy


如下給出了示例(作了部分裁減,而且同用戶所看到的實(shí)際輸出會(huì)有所差別)。

QUOTE:
18:07:55,024 INFO [EjbModule] Deploying CustomerBean
18:07:55,103 INFO [EjbModule] Deploying AccountBean
18:07:55,142 INFO [EjbModule] Deploying TxBean
18:07:55,403 INFO [EjbModule] Deploying NextIdBean
18:07:55,439 INFO [EjbModule] Deploying AccountControllerBean
18:07:55,478 INFO [EjbModule] Deploying CustomerControllerBean
18:07:55,503 INFO [EjbModule] Deploying TxControllerBean
18:07:56,950 INFO [EJBDeployer] Deployed: file:/private/tmp/jboss-4.0.2/server/default/t
mp/deploy/tmp15097JBossDukesBank.ear-contents/bank-ejb.jar
18:07:57,267 INFO [TomcatDeployer] deploy, ctxPath=/bank, warUrl=file:/private/tmp/jboss
-4.0.2/server/default/tmp/deploy/tmp15097JBossDukesBank.ear-contents/web-client.war/
18:08:00,784 INFO [EARDeployer] Started J2EE application: file:/private/tmp/jboss-4.0.2/
server/default/deploy/JBossDukesBank.ear


如果存在錯(cuò)誤或異常信息,則請(qǐng)注意錯(cuò)誤信息,并確認(rèn)導(dǎo)致錯(cuò)誤的原因(比如,部署某
特定EJB 時(shí),或Web 應(yīng)用等等)。請(qǐng)檢查EAR、WAR、EJB jar 文件的完整性,比如所有所
需的組件(類、部署描述符等等)是否都存在。
如果應(yīng)用已經(jīng)部署,則用戶可以放心地再次部署它。如果需要卸載應(yīng)用,則只需要將相
應(yīng)的存檔從deploy 目錄刪除即可。當(dāng)然,JBoss 服務(wù)器始終不需要重啟。如果一切都正常,
并無異常拋出,則通過Web 瀏覽器打開如下URL:
http://localhost:8080/bank/main

[attachment=408]

hasek 2005-12-07 14:42
忘了告訴大家了
用戶ID:200
密碼:j2ee

洋洋 2005-12-27 16:10
謝謝。總版主辛苦了。

wish 2006-01-08 00:47
支持原創(chuàng)

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多