歡迎您光臨本站 註冊首頁

在Glassfish上部署web應用

←手機掃碼閱讀     火星人 @ 2014-03-10 , reply:0

本文介紹如何在Glassfish上部署web應用.

一,開發工具的選擇

Java EE,或者是JSF應用開發,Netbeans和Glassfish是最好的搭配選擇,前者對於後者有非常好的支持.但要注意netbeans的版本,5.5是不支持glassfish v2的.而netbeans6還很不穩定,所以現階段最好的版本是netbeans5.5.1.

關於Netbeans下開發Java EE應用,官方有文檔介紹:Java EE 應用程序相關教程,這裡主要介紹一下生產環境中web應用在glassfish下的部署和配置

二,下載安裝Glassfish V2

1)下載Glassfish v2並解壓縮.下載完畢後,執行以下命令:

java -Xmx256m -jar glassfish_filename.jar

點擊接受彈出的協議后(這裡sun比較無聊啊,所有軟體都是,明明一個普通壓縮包,非壓成jar讓你看一下協議才行),glassfish會解壓到一個名為glassfish的目錄里.

2) 修改埠

glassfish是通過ant來安裝的,安裝腳本在setup.xml下,在裡面可以修改一些配置,比如埠等等.在setup.xml中主要有以下設置:

xml 代碼

﹤property name="domain.name" value="domain1"/﹥  域名 
﹤property name="instance.name" value="server"/﹥
﹤property name="admin.user" value="admin"/﹥ 管理員用戶名
﹤property name="admin.password" value="adminadmin"/﹥ 管理員密碼
﹤property name="admin.port" value="4848"/﹥ 管理平台埠
﹤property name="instance.port" value="8080"/﹥ 實例埠,也就是通過這個埠來訪問web應用
﹤property name="orb.port" value="3700"/﹥
﹤property name="imq.port" value="7676"/﹥
﹤property name="https.port" value="8181"/﹥ https埠

根據需要修改以上設置,執行:ant -f setup.xml,如果系統沒有安裝ant,在glassfishlibant下有一個ant1.6版.安裝結束后,進入glassfish/bin下,在控制台執行下面命令啟動glassfish:

asadmin start-domain domain1 // domain1是上面設置的domain.name,系統默認domain1

啟動結束后,進入http://localhost:8080測試是否已經正確啟動

asadmin stop-domain domain1 //停止伺服器

三,部署web應用

有三種方式,可以直接將war或ear放在glassfish/domain/autodeploy目錄下,glassfish啟動後會自動部署.第二是通過命令asadmin deploy部署應用, 另外 asadmin updeploy 卸載應用.通過asadmin deploy --help 和 asadmin undeploy --help 獲得更多幫助.

第三是通過我推薦的方式,通過glassfish管理控制台進入http://localhost:4848,默認用戶admin,密碼adminadmin.打開後看到如下界面:

進入左側菜單, Applications -> Web Applications,在列表中可以看到已經部署的應用,如要部署新應用,點擊deploy按鈕,選擇本地的war,設定好context path,點擊OK,無論部署成功或失敗,都會看到相應的信息提示

註:通過這種方式,可以進行遠程部署,只要打開目標伺服器上的管理控制台,選擇一個本地的war,就可以快速的部署到遠程伺服器上,非常方便,這也是推薦的原因.對於EJB應用,在Enterprise Applications下部署,方法同上

四,配置jdbc數據源

對於Java EE應用,經常需要事先設定數據源,否則部署時會報javax.naming.NameNotFoundException

配置方法是進入Resources -> JDBC,會看到JDBC Resources和Connection pools

先設定Connection pools,以MySql為例,點擊New,命名為MySqlPools,ResourceType選擇javax.sql.ConnectionPoolDataSource,Database vendor肯定選擇mysql,然後點擊next進入下一頁面.最主要的是設定Additional Properties,也就是jdbc連接配置,設定好url, user, password,其他的保持默認值,也可以根據需要自己添加屬性.設定好連接池后,接著設定JDBC Resources,新建一個JDBC,名稱要和你的web應用里的持久化單元採用的數據源的名稱一致.
然後再次部署web應用,就會正常運行了.


[火星人 ] 在Glassfish上部署web應用已經有977次圍觀

http://coctec.com/docs/java/show-post-61560.html