Ext JSの導入を検討

S2JSFで開発継続中のWebアプリケーションが、カレンダーだのWYSIWYGエディタだのタブコントロールだのと、JSライブラリ寄せ集め状態になって収拾が付かなくなってきたので、Ext JSへの移行を検討中。

S2JSFレンダリングしたform要素を、Extのコントロールに自動マッピングすることになると思うんだけど、どんなやり方がベストだろうか。今考えているのは、CSSのクラス名に規約を設けておいて、HTMLのロード時にform要素を総なめして変換する方法。

<!-- Ext.form.TextFieldに変換 -->
<input class="ext-text" type="text" m:value="#{fooDto.stringValue}"/>

<!-- Ext.form.DateFieldに変換 -->
<input class="ext-date" type="text" m:value="#{fooDto.dateValue}"/>

<!-- Ext.form.HtmlEditorに変換 -->
<textarea class="ext-html" m:value="#{fooDto.htmlValue}"></textarea>

あと、Extを使うからには、ぜひクライアントサイドバリデーションを組み込みたいところ。S2JSF側のバリデーション指定が、Ext側にも自動的に反映される仕組みを考え中。