- Cubbyの特徴
6390行、小さい。Jarは197KB
CoolなURI!
- Cubby1.0は2年前に使われていた
JSPは嫌われてたので、JSP2.0になって良くなったのにみんな使ってない
ロストテクノロジー化していた
使いまくりたかった
- 実績はそこそこあるよ
- CubbyとStruts1.3との違い
脳内変換不要なカスタムタグ
基本のHTML記法をベースとして、名前空間とか独自属性をちょっと追加するだけ
DynamicAttribute
いちいちTLDに宣言しなくても簡単に属性を追加できる
設定ファイルレス
全てActionに集約されている
struts-config.xmlのメリットってなんだっけ?
一元管理
Action上で柔軟に遷移先を管理できる
でもそんなことはそんなにないよね。
@Validation
rulesはタイプセーフじゃないのかぁ
@Path
省略もできるけど、明示的につける方がわかりやすいと思う
パラメタマッチングで正規表現が使える
適当に作ったけど、JSR311(RESTのやつ)とだいたい同じになってた
- Cubby2.0紹介
本日(3/14)リリース 2.0-beta1
DIContainerに非依存
Provider方式で疎結合化
Spring,EJB,Slimは今後サポート予定
内部構造をリストラクチャ
公開パッケージと非公開パッケージ(internal)の明確化
モジューラブルな設計
各種Providerで自由にカスタマイズできる
例) JsonProvider
日付を使えるようにしたいとかで、Jsonライブラリを入れ替えたいことがあるんじゃないか。
というときにProviderを実装した変更すればok
public field
S2を選択した場合は使用可能
- CubbyとMaven2を使った開発のTips集
Cubbyのポリシ
フレームワークでがんばりすぎない
アプリ開発者で創意工夫すべき
基底クラスがあると便利
AbstractAction
AbstractValidationRule
ビューを部品化しよう
以下の2つがおすすめ
JSTLのインポートタグ(<c:import>)
パラメータが文字列しかできない
属性とかの必須指定とかができない
シンプルなものはこっち
タグファイル(<tag:hoge>)
リッチなものはこっち
クライアントサイドテンプレートが今後来る(縣氏談)
jTemplatesとか。まだイケてないけど。
Maven2使おうよ
Cubby2のアーキタイププラグインがある
#これはすごい!
#ひな形に残念なスペルミスが・・・「Cuuby」
MavenとEclipseの連携
mvn eclipse:clean eclipse:eclipse がおすすめ
eclipse:cleanにしないと、依存ライブラリ追加時にうまくいかないことがある。
WTPの問題とか
#もしかして、例のWTPエラーが解決する?
m2eclipse
最近ある企業がコミッタを囲って作ってるので、安定してきた
リリースビルドの自動化
mavenのprofileという機能を使ってリソースを置き換えるのがおすすめ
CubbyのArchetypeプラグインで本番用プロファイルが作られる
$ mvn package -Pproduction
CI用のプロファイルを作って切り替えてもいい