BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Warbler:RailsのJava EE WARファイル向けパッケージングツールの機能強化

Warbler:RailsのJava EE WARファイル向けパッケージングツールの機能強化

Nick Sieger氏はJRuby(サイト・英語)チームの一員で、JRuby1.0.1とGoldspike 1.3を統合する作業をしていた。GoldSpikeはRailsアプリケーションをJava EEサーバ上で動作させることが出来る。GoldSpikeは、JRuby extras(サイト・英語)プロジェクトの一製品である。JRuby extrasとはsatelliteプロジェクトのグループで、JRubyとRubyライブラリ間のギャップを埋めることを目的としている。 Nick氏はアプリケーションのパッケージングに関して、GoldSpikeがとったアプローチに満足出来なかったので、GoldSpikeパッケージングプラグインを書き換える決心をし、そしてWarblerが誕生(source)した。

GoldSpikeに関する問題点

Railsをwarファイルにパッケージングすることは間違ったアプローチだというのが私の意見です。Railsをwarファイルにパッケージングすると、Railsのアプリケーションディレクトリがwarファイルのルートに保存されてしまい、webサーバやJavaのアプリケーションサーバはRailsアプリを静的コンテンツと誤って認識してしまいます。Javaのwarファイルの仕様には動的コンテンツを隠すことが目的のWEB-INFという特別なディレクトリがあります。どうしてこれをJRubyでも使わないのか?そして、WEB-INFを使ってからGoldSpikeは私の完全なRailsアプリケーションディレクトリ、.svnディレクトリ及び全てをパッケージングしてくれました。だから私はGoldSpikeを修正する作業に着手しました。

Warblerはgemを使用してインストール出来る。そしてJRubyとGoldSpikeサーブレットを一緒にし、Javaアプリケーションサーバの中で、送られてきたリクエストをあなたのアプリケーションへディスパッチしている。またWarblerはWARBLER_HOME/lib/以下にあるjarファイルを全てあなたが作ったアプリケーションに集めてくれる。GoldSpikeとは異なり、Warblerは外部と依存関係にあるファイルをダウンロードしない。

Warblerのシンプルなコマンドラインインターフェースと柔軟な設定により、Railsアプリケーションを、Java EEサーバ上のJRubyにデプロイする作業は従来と比べてより簡単になることだろう。WarblerとGoldSpikeパッケージングプラグインのコード量を比較すると、Warblerの方が約50%コード量が少ないのである。

原文はこちらです:http://www.infoq.com/news/2007/09/rails-warbler

この記事に星をつける

おすすめ度
スタイル

BT