我正在Icefaces 1.8.2
使用jsf 1.1
在commandLink
操作方法之前,不会调用目标字段的setter方法。
<ice:panelSeries id="deptSeries" value="#{sessionScopedBean.deptList}" var="dept">
......
<ice:commandLink actionListener="#{myActionBean.search}">
<f:setPropertyActionListener target="#{sessionScopedBean.searchList}"
value="#{dept.myList}"/>
<ice:graphicImage title="search" url="/images/search.gif"/>
<f:param name="user" value="#{userBean.name}"/>
</ice:commandLink>
......
</ice:panelSeries>
答案 0 :(得分:1)
首先,在JSF 1.2中引入了<setPropertyActionListener />
。
其次,代码actionListener="#{myActionBean.search}"
代表一个动作侦听器,而不是一个动作。因此,方法myActionBean.search()
在与业务操作侦听器相同的JSF生命周期阶段被调用。
尝试更改命令链接,如下所示:
<ice:commandLink action="#{myActionBean.search}">
....
</ice:commandLink>
此链接可能有助于理解: