NetBeans 6.0 を使うにあたってのポイント その7
気がつけば一週間くらい間が開いてました。今回もVisual Web JSFのお話です。
VisalWebJSFのページを開くとパレットに真っ先に現れるのは「基本」というコンポーネント。
ラベルやテキストフィールドなどがあり、これが標準コンポーネントだと錯覚してしまいますね。実はこれJSFの標準コンポーネントではないのです。
標準コンポーネントは下にスクロールをしていくと現れる「標準」のところにあります。
色があからさまにこちらは手抜きで、「基本」を使うほうが自然に見えるところが実は罠です。
機能的に「基本」のほうが上位ならば問題はないのですが、「基本」のコンポーネントのほうが問題も多いためにそうはいかないのが実情だったりします。
ではその問題とはなにか。
- コンポーネントのリサイズができない
- 実行時にjavascriptで生成されるコンポーネントであるため環境が制限されやすい
- 資料が少ない
- ラベルが勝手に表示される
- JSF1.2で追加された機能を持たない
- バグもいくつか見られる
正直致命的なものが多すぎます。特にラベルが勝手に表示されるのはかなりやっかいな仕様です。キャプションとか別のプロパティを用意して扱うべきだったでしょう。というのはJSFのメッセージはこのラベルを扱ったりする場合が多いのです。また、コンポーネントごとに必須や入力のミス等のメッセージを手軽に変更できる1.2で追加されたプロパティをもたないのもその回避が面倒な原因だったりします。資料はほとんど存在せず、日本語で手に入る資料はほぼゼロといっていい状況(導入程度の記事はありますが、もちろんそれだけを頼りにはさすがに業務では使い物にならないのはみなさんご存知のとおり)です。
一方で「基本」で使ったほうがいいコンポーネントも少ないながらも存在します。それは業務アプリで頻繁に使われる「表」と「カレンダ」です。「カレンダ」はバグはあるものの、手軽に日付を入力させることができるため重宝します。「表」はNetBeans自体のバグやwoodstockのバグのせいで使いにくい箇所も多いのですが、標準の「データ表」より機能が多く、結果的に扱いやすいという微妙な立場ではありますが。「ファイルアップロード」も「標準」にはないので場合によっては重宝するかもしれません。