ゆとりずむ

東京で働く意識低い系ITコンサル(見習)。金融、時事、節約、会計等々のネタを呟きます。

JSPとTwitter APIのお勉強 - 環境構築編(Glassfish)

JSPを使ったTwitterアプリの構築をずっと放置していたので再開してみます。どんなものが出来るのかは、できてみてのお楽しみ!何はさておき、とりあえずJSPを実行できる環境を立ち上げることが第一ですので、その手順と詰まったところを記録しときます。参考にしたのはこちら

1.Glashfishの入手と起動

基本は解凍して起動するだけ。
まずはここからlinux用/他言語版のzipファイルを入手。適当にダウンロードして、とりあえず解凍した上で、/usr/local/に移しておく。あとは、

/usr/local/glassfishv3/glassfish/bin/asadmin start-domain

とかを叩き、サーバー上で、以下のアドレスで管理コンソールに到達出来ればOK。iptabeleに穴を開けておけば、URIでもアクセス出来ると思うけれど、個人的には、不用意に穴を増やすのは好きじゃないので、VNCでアクセス出来ればよしとします。

http://localhast:4848

2.JDKのインストールとパスの設定

じゃあ、実際に何か適当にデプロイして・・・と思ったので管理コンソールの『Application』から『Deploy』を選択して、手許に残っていた前に作っていたwarファイルを読み込ませてみる・・・が、『Precompile JSPs: 』にチェックを入れて進めようとしても以下のエラーが出てうまくいかない。外せば上手く行くが、今度はアクセスした際に以下のエラーが出る。

HTTP Status 500 -
type Exception report
message
descriptionThe server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: PWC6345: There is an error in invoking javac. A full JDK (not just JRE) is required
note The full stack traces of the exception and its root causes are available in the GlassFish Server Open Source Edition 3.1.2 logs.

意訳するとJDKがねーよ。JREと間違ってね?』とのこと。むむむ・・・。確かにJDKまで入っているかどうか怪しい。というわけで、こちらを参考にまずはJDKを入手。こちらの手順と違う点として、JDKこちらから最新のLinux x64 RPM版をゲット。
最後に、こちらを参考にglassfishからjdkが読み込めるようas_javaに下記のパスを追記。

AS_JAVA = "/usr/java/jdk1.7.0_21/"

と、追記。これで、とりあえずデプロイは通るようになりました(∩´∀`)∩

3.サービスの登録

さて、最後の仕上げにサーバー再起動時に自動的にサービスが立ち上がるよう登録を行います。ここも、こちらを参考に、偉大なる先達の偉業にお力添えを頂き、コピーアンドペーストでシェルを作成。log_daemon_msgは面倒くさくて通していないので、コメントアウト。最後に、glassfish start,glassfish stop で動くかどうかを確認し作業完了。

さて、次は色々なものを創っていくかな〜。