どぅーちゅいむーにー

これ、Twitterでよくね?という日々の記録かも

GlassFish に触れる(2):Webアプリのデプロイ

Tomcat で動かしていた簡単なアプリを GlassFish にのせてみよう計画。


Tomcat 設定でいうところの前提?


個人的な趣味としてというか、ローカルでは開発環境として使っているので、Tomcat 上へのデプロイは、${TOMCAT_HOME}/webapps に war を配置するのではなく、${TOMCAT_HOME}/conf/Catalina/localhost/コンテキスト.xmldocBaseEclipse のプロジェクトワークスペース(というのでしょうか)を指定する形をとっています。


○WAR の作成
今回は、Tomcat で動作実績のあるアプリ(とはいってもしょーもないアプリですが)を配置する、ということで、Eclipseワークスペースからファイルをコピーし、(Subversion 用の .svn は削除して、)test_app.war というファイルを作成し、これを GlassFish にデプロイすることにしました。
test_app.war の簡単な構成は以下のような感じ(普通の構成です)。


> jar tvf test_app.war
0 Wed Oct 20 12:36:12 JST 2010 META-INF/
71 Wed Oct 20 12:36:12 JST 2010 META-INF/MANIFEST.MF
0 Wed Oct 20 11:21:46 JST 2010 css/
・・・CSSファイル・・・
380 Tue Jun 08 15:27:14 JST 2010 index.html
0 Wed Oct 20 11:21:48 JST 2010 WEB-INF/
0 Wed Oct 20 11:21:48 JST 2010 WEB-INF/classes/
・・・classファイル・・・
0 Wed Oct 20 11:21:48 JST 2010 WEB-INF/jsp/
・・・JSPファイル2・・・
0 Wed Oct 20 11:21:48 JST 2010 WEB-INF/lib/
・・・ライブラリファイル・・・
3483 Wed Oct 20 11:50:40 JST 2010 WEB-INF/web.xml
※ web.xml は特に変更していません


なお、この形で war を作成するのがめんどくさかったので、ついつい1つ上のフォルダで war を作成(1つ上のフォルダが webapps だとしたら、webapps/WEB-INF/ となるイメージ)してデプロイしたら web.xml が見つからないからか、デプロイは成功しますが、リクエストが 404 になりました。残念。


○デプロイ
デプロイはいたって簡単?
管理画面の「アプリケーション」を選ぶと、配置されているアプリケーションの一覧が表示されます。最初は何もないはず。
配置ボタンを押下して、「アプリケーションまたはモジュールを配備」画面を表示します。
場所にて「サーバーにアップロードされるパッケージファイル」がチェックされた状態で、その下の参照ボタンから作成した war ファイルを選択します。
すると、.war から判断するのか、画面下部に新しい入力フォームが表示されます。
以下、主な入力フィールド
タイプ:「Web Application」
コンテキストルート:お好み。たぶん http://サーバー:ポート/ここ!/ ですよね。
アプリケーション名:お好み。何に使われるのかよくわかっていませんが・・・
私はとりあえず残りはデフォルトのままにしました。


そして OK ボタンを押下すると、デプロイ処理がスタート。
アプリケーションの一覧に戻り、一覧にアプリケーション名で指定した名前のエントリが表示されれば成功です(たぶん)。
一覧のアクションから「起動」をクリックすると、http://サーバー:ポート/コンテキストルート/ が新しいウィンドウで表示されます(FireFox 使用)。


以上でデプロイは完了。
次はデータベースへの接続について。