slim3でGAE/J 事始め - Velocity対応完了
すべてのslim3デモをVelocityで実現することが出来た。
サーバーにUPしても問題なく動いた。
やっていく中でいくつかVelocityのノウハウが溜まったのでまとめてみる。
<input type="text" name="arg1" value="$!arg1" />
このように書きがちだがValidationエラーになったときプロパティに値がアサインされないのでまずい。
正しくは
<input type="text" name="arg1" value="$!form.bean.arg1" />
このようにしたほうがベターだ。
少しわずらわしいのでマクロを作って
<input type="text" name="#i('arg1')" />
と書けるようにした。
他にもcheckboxとかselectとかを簡潔に書けるようにマクロを作ってみた。(次のエントリーで。)