Linux(CentOS5)へGlassfishV2UR1のインストールで注意すべきとこ
まず、スタートアップガイドが開けないのでドキュメントが見れなくて不安になる。FireFoxで起こった問題。IEだと普通にひらけるのでIETABで切り替えておくとよい。
JPackageの設定
さて、本題。
CentOS5には標準でGCJが入っていてそれが有効になっているが、あらゆる面でsunのJREやJDKに大きく劣るのでsunのJDKを落としてこよう。これは普通にセットアップする。フルパスでJDKへのパスをいれておけば一応このままで使うことができるが、面倒なので、メインとなるJava実装を切り替えることにする。
そのJavaの実装を切り替えるにはJPackageという流儀に従うらしい。
jpackageをセットアップ。
>yum install jpackage-utils
jpackage.orgにてjava-1.6.0-sun-compat-1.6.0.03-1jpp.i586.rpmなど該当するrpmをダウンロードしてセットアップする。
>rpm -Uvh java-1.6.0-sun-compat-1.6.0.03-1jpp.i586.rpm
JDKをインストールするタイミングはいつでもよいようだ。
JDKの切り替えは以下のコマンドにて選択する。
>alternatives --config java
glassfishのセットアップ
>java -Xmx256m -jar filename.jar
と入力するとインストーラが起動する・・・はずなのだが、エラー。
>java -Xmx256m -jar filename.jar -console
と入力する必要があるようだ。
これで、カレントディレクトリにglassfishというディレクトリが生成され、その下に各種ファイルセットアップされる。このままではまだ使えないので注意だ。antを起動してdomain1を作る必要がある。antはすでにglassfishのディレクトリにあるのでそれを使う。
>chmod -R +x lib/ant/bin >lib/ant/bin/ant -f setup.xml
と打ち込むことで生成できるのだが、デフォルトのポートだとtomcat等とぶつかるなどあるだろう。その場合setup.xmlを先にいじっておく必要がある。この中で8080とかそれらしいところをいじっておこう。
glassfishの起動は以下のコマンド。
>bin/asadmin start-domain domain1
glassfishの停止は以下のコマンドだ。
>bin/asadmin stop-domain domain1
管理画面はデフォルトでポート4848になっているのでそれをブラウザで開くとよい。
データベースのコネクションプール設定
Tomcatと違い、管理ツールでグラフィカルにできるのでらくちん。特にはまる場所はない。
ただし、JDBCドライバをglassfishに登録してあげないといけない。
以下のディレクトリにjarファイルをおけばいい。
glassfishをインストールしたディレクトリ/domains/domain1/lib/
よりそれらしいという意味では
glassfishをインストールしたディレクトリ/domains/domain1/lib/ext/
のほうがいいか。glassfishの再起動をしよう。
以上でglassfishは動く。Windowsだとインストーラだけでdomain1まで設定してくれてなにもする必要がない分手軽さが違う。
tomcatは6からグラフィカルな管理ツールが消えたのと、コネクションプールなど各種設定をxmlをいじって設定しなくてはいけないのが面倒だ。もはやシンプルなWebアプリケーションでもTomcatからglassfishに切り替えてもいいと思う。アプリケーションサーバーは重いイメージがあるが、glassfishは比較的軽く、驚く。Core2Duo/2GHzもあれば重さは感じないだろう。