slim3プロジェクトの作成

なんか、いまさらながらに、プレーンのアプリをslim3化という作業段階を踏んだのが無駄のような・・・

まぁ、それはさておき、slim3版のプロジェクトの作成のメモ
slim3-blankの提供開始までもしくは
GAEのプロジェクトで作成してしまった人がslim3を適応するためのメモになります。

追記 2009/07

ずいぶんご無沙汰していますが、slim3-blankが出ているようですので、
そちらを利用してください。

プロジェクトの作成

GAEのプロジェクトを作る。
slim3itを元にして、以下作業を行なう。

jarのコピー

war/WEB-INF/libに
slim3-EA1-SNAPSHOT.jarをコピーし、ビルドパスを通す

単体テストの準備

appengine-api-stub.jar
appengine-local-runtime.jar
junit-xxx.jarにビルドパスに通す。
これは、slim3のサンプルとかから入手するより、
eclipseプラグインフォルダにパスを通す(ユーザライブラリ作っておく)方がよい・・・のかな?


単体テスト用のソースフォルダとかを用意しソースフォルダ指定をする。
出力先はデフォルト以外の場所を指定する。

web.xmlをコピーする

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app xmlns="http://java.sun.com/xml/ns/javaee" version="2.4">
    <context-param>
        <param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
        <param-value>application</param-value>
    </context-param>
    <filter>
        <filter-name>frontController</filter-name>
        <filter-class>org.slim3.controller.FrontController</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>frontController</filter-name>
        <url-pattern>/*</url-pattern>
        <dispatcher>REQUEST</dispatcher>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>INCLUDE</dispatcher>
        <dispatcher>ERROR</dispatcher>
    </filter-mapping>
</web-app>

jdoconfigのコピー

src/META-INF/jdoconfig.xmlをコピーする

build.xmlのコピー

また、便利なantタスクがあるので以下もやっておく。
slim3-gen-XXX.jar
をslim3itのサンプルとかから取得し、libにおいておく。


slim3itよりbuild.xmlを拝借する。
Contorllerと、viewのテンプレートを作ってくれるので便利
※ただ、WEB-INF/jspをviewのデフォルトとする設定とかは無いみたいなので、
WEB-INFにJSPをおくことに強迫観念がある人はslim3-genをいじってもよいかも。
ただ、Function辺りに影響が出ても困るし・・・というちょっとした不安もあり


※ちなみに、各種slim3プロジェクトもチェックアウト済みならjarのコピーとかもしてくれるタスクもあり。

パッケージの策定

rootPackageを決め、その下に
controllerとmodelを作る


controllerパッケージの設定

appengine-web.xmlのsystem-propertiesに以下設定を追加

modelフォルダの設定

プロジェクトのプロパティ>Google>AppEngine>ORMに上記modelフォルダを追加する

aptの設定

プロジェクトのプロパティ>Javaコンパイラー>注釈処理に
aptの設定を入れる

  • プロジェクト固有の設定を可能にするにチェック
  • 注釈処理を使用可能にするにチェック
  • 生成されるソース・ディレクトリに.apt_generatedを指定
  • プロセッサー・オプションに
  • validation=trueを追加


さらにファクトリー・パスに以下指定

  • プロジェクトの固有の設定を可能にする
  • slim3-gen-XXX.jarを追加する

※詳しくはslim3itプロジェクトの設定を参照


上記ソースディレクトリ(.apt_generated)をソースフォルダとして指定する。

雑感

なんだかslim3itをベースにした方が早いかもしれませんね

雛形作成

あとは画面構成、パス構成を決定して、
antのgen-controllerタスクで雛形を作っていく。

最初はプロンプトで/としてIndexを作成してみると動作確認も出来、素敵(index.htmlは消しておくこと)