如何避免特定事件的APPLY_REQUEST_VALUES阶段

时间:2012-02-23 14:30:35

标签: jsf richfaces jsf-1.2

我有一个要求,其中表单显示模型对象的许多输入字段。

在其中一个字段中调用外部插件,该字段的值在该模型中由该插件直接更改(在UI表单字段中未更改),现在我想reRender该面板以便更改值(来自模型对象)显示在UI表单字段上。

已验证所有内容,插件也可以更改模型中的值,并且还可以触发面板的reRender。当reRender时,会发生什么,UI形式的值应用于模型,模型对象丢失值(由插件设置),当面板刷新时,我仍然会看到空白字段。

有没有办法只为这个事件绕过APPLY_REQUEST_VALUES,以便显示模型中的值?或者有更好的解决方案吗?

此致 萨蒂亚

1 个答案:

答案 0 :(得分:2)

您可以使用immediate="true"

<a4j:support ... immediate="true" />

这样只会处理当前组件。

另一种方法是在值更改侦听器中立即继续呈现响应,以便跳过更新模型值(和调用操作)阶段。

FacesContext.getCurrentInstance().renderResponse();