タグの共通的な属性の使い方
タグの勉強をしていく上で、頻繁に見かける属性の使い方。
使い道がわからないのはとりあえず無視。
converter属性
タグの値をconvertする。java.faces.convert.converterインターフェースをimplementsしているクラス
を作って設定する。
とりあえず大文字に変換するconverterを作成。
@FacesConverter(value="toUpperCase") public class ToUpperCaseConverter implements Converter{ @Override public Object getAsObject(FacesContext context, UIComponent component, String value) { return value != null ? value.toUpperCase() : null; } @Override public String getAsString(FacesContext context, UIComponent component, Object value) { return value != null ? value.toString().toUpperCase() : null; } }
<h:body> <h:outputLabel value="#{outputLabelBean.outputLabel}" converter="toUpperCase" /> </h:body>
そしてh:outputLabelのconverter属性にアノテーションのvalueに設定した文字列を設定
するとOUTPUTと表示されました。
以前は設定ファイル(faces-config.xml)にconverter-idなるものを記述したらしいのですが
JSF2.0ではアノテーションを書くだけでよいらしい。
converterの場合は
@FacesConverter(value="[converter-id]")
こんな感じ
id属性
id属性に指定した値がそのままid属性で出力されます。
<h:outputLabel value="#{outputLabelBean.outputLabel}" id="id" />
↓出力結果
<label id="id">output</label>
rendered属性
booleanで設定します。falseにすると出力されなくなります。
デフォルトはtrueです。
<h:outputLabel value="#{outputLabelBean.outputLabel}" rendered="false" />
残り
近いうちにつづきをやります。