Shale Clay Plugin その7
だらだらと書いてきましたが,Clayはこの辺で終了したいと思います.
次回は,そろそろView Controllerに触れてみます.
そのうち,いくつかサンプルを挙げてみます.
さて,今回は振り返りということで.
今まで,HTMLのタグにjsfidを指定して,JSFのコンポーネントを定義していきました.
HTMLのタグに,謎のJSFのタグの属性をつけてきました.
デザインとプログラムを切り分けるのならば,やはりHTMLにJSFの属性を入力していくのはどうなのだろうか?と,思うようにもなりました.プログラムを作る側(例えば私)は,HTMLテンプレートに属性をがしがし埋め込んで,なるべくならば,clay-config.xmlを書きたくないなぁと思いました.
Clayを「再利用性の高いViewフレームワーク」と言っている理由は,clay-config.xmlに定義した内容を
他のViewでも使いまわせるという所にあるのではないでしょうか?
実際,h:messagesなどは,どの画面にも同じ内容を埋め込むのならば,clay-config.xmlに定義しておいたほうがいいかもしれません.
clay-config.xml
<component jsfid="globalErrorMsg" extends="h:messages" allowBody="false"> <attributes> <set name="globalOnly" value="false" /> <set name="showDetail" value="true" /> </attributes> </component>
と,定義しておけば,HTMLもこのようにすっきりします.
<span jsfid="globalErrorMsg" style="color:red;">Error Message</span>
かろうじて,デザイナさんも納得してくれそうです.
複数の画面に同じような項目を表示するとしたら,それもまとめてclay-config.xmlに定義しておくと便利かもしれません.
JSFを使用したいと思うなら,確実にHTMLテンプレートを使用するのが楽ですよ.と,最後に感想を述べておきます.
しかし,Clayを調べてみて,あらためてS2JSFはよく考えられているな...と.