T2 0.6.3-cr1をリリースしました
T2 0.6.3 CR(Candidate Release)1をリリースしました。
新機能
- 初期化パフォーマンス向上対策(GAE/J spin-up対策含む)
初期化パフォーマンス向上は全てのアプリケーションで恩恵にあずかれます。
GAE/Jでも初期化時に重い処理をしなくて済むのでspin-upに一定の効果があります。
RC1で更に検証して正式版をリリースします。
機能的としては、簡単に言えばT2初期化時に行っていたルートパッケージを見て
そこからPageクラスを探して登録するプロセスを省き、page.propertiesという設定ファイルによって登録するという手段です。
設定ファイルは非常に簡単なpropertiesファイルによる記述で、
ルートパッケージ名=クラス名(複数ある場合はカンマ区切り)
で登録します。
設定ファイルは3つの手段を選択できます。
- 自分で書く
- java -jar t2-jar [classファイルのルート出力先] [ルートパッケージ] [page.properties出力先]で実行して半自動で作成する
- APT(Annotation Processing Tool)によってコンパイル時に生成する
しかし、大事なのはこの機能はあくまで補助機能であって既存のT2の挙動にはなんらかわりないという点です。
詳細はこれから出すT2サンプルAPT版などをみてもらえるとわかります。
改善
- @Var/@RequestParam/@SessionParamで型変換をサポートしてほしい。
- @Formで使われるDTOをContainer管理化に出来ない
改善点は主に型変換とFormの扱いについてです。
型変換についてはポリシとの兼ね合いで迷いましたが、基本的な型変換は許容することにしました。
@Formで使うDTOをコンテナ管理にするとJSR299 CDI(Contexts and Dependency Injection)などで使えるようになります。
詳細は以下をご覧ください。
バグ修正
- Formの日付変換がロケールが違うと正しく機能しない
注意事項
- FormResolver#resolveのAPIの引数が変更になりました.