プロパティ取得だけじゃなくてメソッドも呼べるんだよ!

higayasuo 2008/02/20 10:03
getXxx()というメソッドをエンティティに用意しておけば、
${f:h(e.xxx)}のような感じでアクセスできます。

ひがさんから頂いたコメント通り、メソッド呼び出しも可能なことが発覚!
正直、プロパティの取得だけしか無かったら <% %> なスクリプトレットのゴリゴリには勝てないでしょ・・・と思っていたけどトンだ勘違い野郎だった orz

いざとなれば、useBean を絡めた <% %> で複雑な HTML を生成することもできるけど、メソッド呼び出しができるんだったら HTML 生成にはそんなに苦労しないんじゃないかと思う。ウザイ仕様を持ってくる人も居るのでその時には秘技として使えば作れない HTML は無いんじゃないかと。
ただ、useBean を使うと Action のメンバが変更されたときに Hotdeploy が効かなくなっちゃうので HTML を Java 側で作っちゃう方がいいのかも。僕はそれが結構好きで TABLE 、TR、TD みたいなクラスを使ってテーブルイメージのオブジェクトを生成した後、 JSP で table.toHtml として HTML の展開を行う。JSPで書くより応用が利いて便利だし、HotDeploy なので JSP でも Java 側で書いても開発速度は同じなのが一番嬉しい。
うちのフレームワークにも HotDeploy 入らないかな・・・不可能に近いけど。