【问题标题】:Updating non-JSF form更新非 JSF 表单
【发布时间】:2012-11-07 07:55:59
【问题描述】:

我有一种情况,我想向我的支付网关合作伙伴提交用户的支付详细信息。

为此,我有一个单独的非 JSF 表单,其中隐藏值作为要传递的参数。

<form id="hiddenForm" action="#{checkoutBean.payuAction}" method="post" name="payuForm">

                        <p:outputPanel id="hiddenPanel">
                        <h:inputHidden id="hash" value="#{checkoutBean.hash}"/>
                        <h:inputHidden id="txnid" value="#{checkoutBean.txnid}"/>

                        <h:inputHidden id="amount" value="#{checkoutBean.totoalAmount}"/>
                        <h:inputHidden id="firstname" value="#{checkoutBean.firstname}"/>
                        <h:inputHidden id="email" value="#{checkoutBean.email}"/>
                        <h:inputHidden id="phone" value="#{checkoutBean.phone}"/>
                        <h:inputHidden id="productinfo" value="#{checkoutBean.productInfo}"/>
                        <h:inputHidden id="surl" value="#{checkoutBean.sURL}" />
                        <h:inputHidden id="furl" value="#{checkoutBean.fURL}"/>
                        </p:outputPanel>
    </form>

上述隐藏值是在向导的最后一步使用 ajax 生成的(primefaces)。 ajax 调用正在发生,但我无法更新非 JSF 表单。值为空。

<p:commandButton value="Confirm" actionListener="#{checkoutBean.initPayu}" onsuccess="submitPayuForm()" update=":hiddenForm:hiddenPanel" />

上面的按钮在&lt;h:form&gt;.

现在我相信不可能从 JSF 组件更新非 JSF 组件。但我就是不知道如何处理这种情况。

关于如何解决这个问题的任何想法?

使用:JSF 2,Primefaces 3.3

非常感谢。

【问题讨论】:

    标签: java ajax jsf-2 primefaces


    【解决方案1】:

    由于您的表单不是 JSF 组件,因此您不需要将其 id 附加到 JSF 组件的 id 上 (:hiddenForm:hiddenPanel)。

    换句话说,试试这样的:

    <p:commandButton ... update="hiddenPanel" />
    

    【讨论】:

    • 那行不通。 javax.faces.FacesException:找不到从“wizForm:j_idt62”引用的标识符为“hiddenPanel”的组件。
    • Akshat,仔细阅读此stackoverflow.com/questions/8634156/…,然后查看生成的 HTML 源代码。我猜你实际上需要update=":hiddenPanel"
    • 谢谢伙计。该链接说明了一切。我开始相信 JSF 组件不能更新非 JSF 表单。你能用那个链接写一个两行的答案吗,我会接受它作为答案。干杯!
    猜你喜欢
    • 1970-01-01
    • 2015-12-10
    • 2014-07-30
    • 1970-01-01
    • 2013-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多