【问题标题】:Why rich popupPanel component of richfaces submits null value to managed beans?为什么richfaces的丰富popupPanel组件向托管bean提交空值?
【发布时间】:2011-07-16 14:26:31
【问题描述】:

我正在使用richfaces 4.0 和jsf 2.0 的rich:popupPanel 组件,其中包含一些表单字段,例如name.address 和联系人,还有一个a4j:commandButton“保存”。文本字段绑定到托管 bean 属性,如

<h:inputText size="25" maxlength="20" value="#{us.patient.lname}"/>

当我单击保存按钮时,执行按钮的添加方法,该方法打印文本字段的值(即 bean 的属性)。由于 textfield 值不为空,因此 textfield 的值未绑定到 beans 的属性。它给出了空结果,为什么这只发生在弹出窗口?

【问题讨论】:

    标签: jsf popup richfaces


    【解决方案1】:

    按下&lt;a4j:commandButton&gt;后是否渲染&lt;rich:popupPanel&gt;

    例如,假设您的 popupPanel 的 id 名为 popup (&lt;rich:popupPanel id="popup"&gt;),您需要设置 &lt;a4j:commandButton&gt; 的 reRender 属性来定义您想要更新的 JSF 组件作为 Ajax 交互的响应。在您的情况下,您应该在按下保存 &lt;a4j:commandButton&gt; 后更新您的 &lt;rich:popupPanel&gt;,因此您应该使用:

    &lt;a4j:commandButton value="Save" reRender="#{rich:clientId('popup')}" /&gt;

    【讨论】:

      【解决方案2】:

      &lt;rich:popupPanel&gt; 中我们必须包含&lt;h:form&gt; 属性。所以当我们点击按钮时,这个表单是提交并且值被传递给bean。

      【讨论】:

        猜你喜欢
        • 2011-06-16
        • 1970-01-01
        • 2013-04-30
        • 1970-01-01
        • 2012-04-09
        • 2012-11-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多