Primefaces Binding Page attributes



我是Primefaces的新手。现在我正在将RichFaces迁移到Primefaces5.1。在RichFaces中,每个表单都有绑定initForm来绑定页面属性。在相同的表单绑定中,使用PrimeFaces或任何其他属性来绑定页面特性。

我在Richfaces中使用以下代码:

<f:subview id="testSubView">
<h:form id="testForm" binding="#{test.initForm}">
........
</h:form>
<f:subview>

Test.java

public HtmlForm initForm()
{
    fetchIntialPageAttributes();
    return initForm
}
private void fetchIntialPageAttributes()
{
    userTextbox="";
    messagePanelRender=true;
    userCommandButton=true;
    userCommanButtonValue="save";
}

现在,当表单加载Primefaces中使用的相同绑定属性时,最初怀疑是否绑定。

使用<f:event type="postAddToView">,或者<f:event type="preRenderView">,在视图构建期间将组件添加到视图之后,或者在视图呈现时间之前,立即触发托管bean侦听器方法。

<h:form id="testForm">
    <f:event type="postAddToView" listener="#{test.fetchIntialPageAttributes}" />
    ...
</h:form>

请注意,这一切并不是PrimeFaces(也不是RichFaces(特有的,而是JSF本身特有的。binding属性在JSF 1.x时代实际上是一种破解/变通方法。这也是JSF 2.0添加这些新组件系统事件和<f:event>标记的原因之一。一个理想的JSF2.x页面在任何地方都不会在backingbean属性上使用binding

另请参阅:

  • ';绑定';JSF中的属性工作?何时以及如何使用

相关内容

  • 没有找到相关文章

最新更新