尝试回放到第一页时,使用primefaces向导进行对话

时间:2018-03-04 17:58:27

标签: primefaces

我的环境:
primefaces 3.5
JSF 2.2

我在对话框面板中有一个向导,显示我单击按钮的时间。 当我关闭对话框,然后再次打开对话框时,向导不会回到第一页。

我试过了:

<p:commandButton oncomplete="dialog.show()" update="dialogForm" ....... >
     <f:setPropertyActionListener value="start" target="#{bean.wizard.step}" />
</p:commandButton>

我得到了一个java.lang.IllegalStateException:视图中组件«frm02:start»alredy'tect的ID。

任何想法如何避免?

1 个答案:

答案 0 :(得分:0)

我将onHideonShow属性添加到dialog,以便wizard始终在第一个标签上呈现(在我的示例中为personal

<p:dialog widgetVar="addUser" header="Add User" appendTo="@(body)" closeOnEscape="true" dynamic="true" modal="true" onHide="PF('addUserWizard').loadStep('personal', true)"
        fitViewport="true" responsive="true" width="700px" height="400" resizable="false" onShow="PF('addUserWizard').loadStep('personal', true)">
<h:form>
    <p:wizard showStepStatus="false" showNavBar="false" widgetVar="addUserWizard" binding="#{wizard}">
        <p:tab id="personal" title="Personal">
        ...
        </p:tab>
        <p:tab id="confirm" title="Confirmation">
        ...
        </p:tab>
    </p:wizard>
</h:form>