アクションメソッドの利用
uji:pushButtonではactionアトリビュート、uji:anchorではactionValueアトリビュートを利用して、アクションメソッドを指定できます。
uji:pushButtonでアクションメソッドを指定する例を次に示します。
<f:view>
<uji:form name="myform" >
...
<uji:pushButton label="送信" action="#{mybean.doAction}" />
</uji:form>
</f:view>
また、1つの画面に複数のボタンがあった場合などにselectedValueアトリビュートを利用すると、どのボタンがクリックされたかをmanaged beanに設定できます。selectedValueアトリビュートにはバリューバインディング式を記述します。
このときselectedValueで指定されたプロパティに設定される値は、beanとpropertyアトリビュートで指定された項目クラスの値です。
<f:view> <uji:form name="myform" > ... <uji:pushButton label="送信" bean="myBean" property="pushButton" action="#{mybean.doAction}" selectedValue="#{mybean.selectedValue}" /> </uji:form> </f:view>
uji:tableViewタグやuji:treeViewタグで、ボタンやアンカーを利用する場合は、列のアトリビュートにaButton(ボタンの場合)かaLink(アンカーの場合)を指定します。aButton、aLinkには”:”(コロン)に続けてメソッドバインディング式で呼び出すアクションを指定します。
次に例を示します。
<f:view> <uji:form name="myform" > ... <uji:tableView bean="myBean" property="tableView" dataCellType="data;data;aButton:#{mybean.doAction}" /> </uji:form> </f:view>
valueChangeListenerの利用
以下のタグでvalueChangeListenerを利用できます。
uji:nameタグ
uji:compositeNameタグ
uji:inputタグ
uji:textareaタグ
uji:selectタグ
uji:recordViewタグ
uji:tableViewタグ
uji:treeViewタグ
uji:listBoxタグ
uji:radioButtonタグ
uji:fieldBigDecimalタグ
uji:fieldBigIntegerタグ
uji:fieldDateタグ
uji:fieldDoubleタグ
uji:fieldLongタグ
uji:fieldStringタグ
uji:fieldTextAreaタグ
uji:buttonListタグ
uji:checkBoxタグ
uji:comboBoxタグ
valueChangeListenerの利用方法は、標準のJavaServer Facesと同じです。
次に例を示します。
[uji:fieldStringでvalueChangeListenerを利用する例]
<f:view>
<uji:form name="myform" >
<uji:fieldString bean="myBean" property="fieldString"
valueChangeListener="#{myBean.valueChanged}" />
<uji:pushButton label="送信" />
</uji:form>
</f:view>
[valueChangeListenerの例]
import javax.faces.event.ValueChangeEvent; public class MyBean { public void valueChanged(ValueChangeEvent event) {
// 値が変化した場合の処理を記述
} }
このとき、ValueChangeEventクラスのgetNewValueメソッド、およびgetOldValueメソッドで取得されるObjectの型はタグによって異なります。
Objectの型 | タグ名 |
---|---|
java.lang.String |
|
java.lang.Stringの配列 | 次のタグでmultipleModeがtrueの場合
|
com.fujitsu.uji.faces.collect.TableValue |
|
com.fujitsu.uji.faces.collect.TreeValue |
|
uji:radioButtonタグは、pickUpModeの値によって、次のとおりに異なります。
pickUpModeがobjectの場合
selectedBeanアトリビュート、およびselectedPropertyアトリビュートで指定されたオブジェクトの型です。
pickUpModeがlistの場合
java.lang.Integer型です。
pickUpModeがtableの場合
com.fujitsu.uji.compo.TableCoord型です。