在Glassfish上部署web應用
本文介紹如何在Glassfish上部署web應用。
一,開發(fā)工具的選擇
Java EE,或者是JSF應用開發(fā),Netbeans和Glassfish是***的搭配選擇,前者對于后者有非常好的支持。但要注意netbeans的版本,5.5是不支持glassfish v2的。而netbeans6還很不穩(wěn)定,所以現(xiàn)階段***的版本是netbeans5.5.1。
關于Netbeans下開發(fā)Java EE應用,官方有文檔介紹:Java EE 應用程序相關教程,這里主要介紹一下生產環(huán)境中web應用在glassfish下的部署和配置
二,下載安裝Glassfish V2
1)下載Glassfish v2并解壓縮。下載完畢後,執(zhí)行以下命令:
java -Xmx256m -jar glassfish_filename.jar
點擊接受彈出的協(xié)議后(這里sun比較無聊啊,所有軟件都是,明明一個普通壓縮包,非壓成jar讓你看一下協(xié)議才行),glassfish會解壓到一個名為glassfish的目錄里。
2) 修改端口
glassfish是通過ant來安裝的,安裝腳本在setup.xml下,在里面可以修改一些配置,比如端口等等。在setup.xml中主要有以下設置:
xml 代碼
﹤property name="domain.name" value="domain1"/﹥ 域名 |
根據(jù)需要修改以上設置,執(zhí)行:ant -f setup.xml,如果系統(tǒng)沒有安裝ant,在glassfish\lib\ant下有一個ant1.6版。安裝結束后,進入glassfish/bin下,在控制臺執(zhí)行下面命令啟動glassfish:
asadmin start-domain domain1 // domain1是上面設置的domain.name,系統(tǒng)默認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數(shù)據(jù)源
對于Java EE應用,經常需要事先設定數(shù)據(jù)源,否則部署時會報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,其他的保持默認值,也可以根據(jù)需要自己添加屬性。設定好連接池后,接著設定JDBC Resources,新建一個JDBC,名稱要和你的web應用里的持久化單元采用的數(shù)據(jù)源的名稱一致。
然后再次部署web應用,就會正常運行了。
您正在閱讀的是:在Glassfish上部署web應用
【編輯推薦】