binding
今考えているbindingの方式は、3通り。
1つ目は、JSF風。
この方式の問題点は、属性の値がブラウザの見た目に影響するとき、プレビューが崩れてしまう点です。例えば、CSSのclass属性に対して、class="#{hoge.myclass}"のようにするとブラウザはきちんと表示できません。
<input type="text" value="#{emp.ename}"/>
2つ目は、formのid属性をJavaBeansに個別のタグのidをプロパティにマッピングする方法。
この方法は、HTMLに混ぜ物がなく、一見きれいなのですが、任意の属性にbindingしようとすると、さてどうしようかな状態になります。
<form id="emp">
<input type="text" id="ename"/>
</form>
3つ目の方法は、binding用に属性を追加すること。次の、bはbindingをあらわすprefixとします。
ブラウザでそのまま見たときは、hogeと表示されていますが、S2JSF上で実行すると、emp.enameの値がbindingされるという仕組みです。これだと、ブラウザのプレビューを壊すことなく、任意の属性をbindingできます。
<html xmlns:b="http://www.seasar.org/jsf/binding">
<input type="text" b:value="emp.ename" value="hoge"/>
</html>
最初の実装は、3つ目でいこうと思っています。