Cubby は Seasar2 / Guice / Spring Framework に統合して動作させることを前提としています。
以下のセットアップ手順は Maven 2.0.7 以降がインストールしてあることを前提としています。 Maven2についての技術情報は、リンク集をご覧ください。
Cubby は Maven2 の archetype コンテナを用意していますので、これを使用してプロジェクトの雛形を作成することをおすすめします。 作成される雛形にはデータベースと連携した WEB アプリケーションを作成するための web.xml や pom.xml の基本的な設定が含まれます。
具体的な作成方法やプロジェクトに必要なファイルは使用するコンテナに応じたページを参照してください。
プロジェクトのディレクトリで以下のコマンドを実行すると Tomcat が起動し、ブラウザで「http://localhost:8080/(アーティファクトID)/」にアクセスすることで、雛形アプリケーションの動作を確認できます。
mvn tomcat:run
Mayaaを使用する場合は依存する jarファイルを「src/main/webapps/WEB-INF」以下に配備する必要があります。 プロジェクトのディレクトリで以下のコマンドを実行し、jarファイルを配備してからTomcatを実行してください。 (EclipseからWTP等で実行する場合は不要です)
mvn war:inplace
作成されたpom.xmlには、リリース時に設定ファイル等を置き換えてWARを作成するプロファイルが含まれています。
プロジェクトのディレクトリで以下のプロファイルを指定して(-Pproduction)実行すると、「src/production/resources」にあるファイルが「src/main/resources」のファイルより優先されてWARが作成されます。 初期設定ではリリース向けのlog4j.propertiesとenv.txt(productが設定)WARが作成されるため、Seasar2でHotDeployのままWARを作成する心配がありません。同じ方法でJDBCの接続設定なども切り替えると便利です。
(参考:Maven2のプロファイル解説、Seasar2のevn.txtについての説明)
mvn clean package -Pproduction
プロジェクトを Eclipse で開発する場合は、Maven2 で Eclipse のワークスペースやプロジェクトを設定します。
Eclipse ワークスペースにビルドパスのクラスパス変数(M2_REPO)を追加します。 以下のコマンドを実行してください。 この作業はワークスペースごとに1度行えば、次回からは必要ありません。
mvn eclipse:add-maven-repo -Declipse.workspace=(ワークスペースのディレクトリ 例 "C:/eclipse/workspace")
プロジェクトに .project や .classpath などといった Eclipse プロジェクトの設定ファイルを作成します。
プロジェクトのディレクトリに移動して以下のコマンドを実行してください。
mvn eclipse:eclipse -DdownloadSources=true
Cubby や Seasar2 など、プロジェクトに必要な jar ファイルがダウンロードされ、WTP でサーバーアプリケーションを実行するための準備が整います。
「-DdownloadSources=true」を付けることで、jar ファイルと一緒にソースコードの jar ファイルがダウンロードされます。
eclipse:eclipseの際に、ソースのjarがあれば、自動的にEclipse上でアタッチされた設定になるので便利です。
プロジェクトを Eclipse のワークスペースへインポートします。
プロジェクトがインポートされます。
WTPのServer設定が行われていない場合、以下の手順で Server として Tomcat 6.0 を設定します。
ServerビューにTomcatが追加されます。
Tomcatが起動して、ログがコンソールに出力されます。
http://d.hatena.ne.jp/uriyuri/20080328/1206694040の設定を行うことで、 WTP環境でワーキングフォルダをPublishingせずに、HotDeployで開発できます。
以下のコードテンプレート設定を Eclipse にインポートすることで「アクションメソッドのコード雛形作成」「バリデーションフィールドのコード雛形作成」が行えます。
補完名 | 内容 |
cubby_action_method | アクションメソッドの雛形作成 |
cubby_validation_field | バリデーションフィールドの雛形作成 |
こちらをご参照ください。