如何从ActionEvent对象获取组件值?

时间:2013-12-01 06:54:42

标签: jsf ajax4jsf jsf-1.1

我正在使用ajax4jsf和jsf 1.1,我的代码如下:

<h:selectOneMenu id="INPUT_PO_DocCategory" binding="#{PrinceOfficeBean.PO_DocCategory}" style="width:200px;">
          <f:selectItem itemLabel="test" itemValue="123"/>
          <f:selectItem itemLabel="test2" itemValue="456"/>
         <a4j:support event="onchange" actionListener="#{PrinceOfficeBean.processDocumentCategoryValueChange}" reRender="INPUT_PO_DocType" />
</h:selectOneMenu> 

此代码是静态的,我可以通过PO_DocCategory绑定对象获取selectOne值 问题是:是否可以通过action事件对象获取actionlistener中的组件值?

public void processDocumentCategoryValueChange(ActionEvent e) throws Exception {
   // get component value from ActionEvent 
 }

1 个答案:

答案 0 :(得分:3)

JSF中的经典方式是使用输入组件的value属性,例如:

<h:selectOneMenu value="#{bean.value}">
    ...
</h:selectOneMenu>

输入值将存储在value的{​​{1}}属性中,并可由操作侦听器用于操作。

仍然可以以“替代”方式获取动作侦听器中的值:

bean