Jsf 2 没有ajax的primefaces对话框验证

Jsf 2 没有ajax的primefaces对话框验证,jsf-2,primefaces,Jsf 2,Primefaces,我有一个对话。该对话框有一个输入字段和一个按钮。该按钮在没有ajax的情况下发布表单。如果输入字段上存在验证错误,则对话框中的p:message标记将正确显示错误,但由于表单post,对话框将关闭。因为我没有使用ajax,所以我不能真正地使用oncomplete技巧来保持对话框打开 如果出现验证错误,在发布后,我有哪些选项可以保持对话框打开(或重新打开) 谢谢。利用对话框组件的可见属性。如果在渲染期间将其设置为true,则页面将在打开对话框的情况下进行渲染 例如,如果存在和: 或者,如果同一

我有一个对话。该对话框有一个输入字段和一个按钮。该按钮在没有ajax的情况下发布表单。如果输入字段上存在验证错误,则对话框中的
p:message
标记将正确显示错误,但由于表单post,对话框将关闭。因为我没有使用ajax,所以我不能真正地使用oncomplete技巧来保持对话框打开

如果出现验证错误,在发布后,我有哪些选项可以保持对话框打开(或重新打开)


谢谢。

利用对话框组件的
可见属性。如果在渲染期间将其设置为
true
,则页面将在打开对话框的情况下进行渲染

例如,如果存在和:


或者,如果同一页面中有多个表单,并且您只想检查dialog自己的表单是否:


注意:默认情况下,
{facesContext.validationFailed}
只有在使用JSF内置的验证工具(
required=“true”
等)和/或使用Fullworth
验证器
实现时才起作用。例如,如果您手动验证in-action方法并手动添加faces消息,那么这将不起作用,除非您隐式地调用自己

另见:

利用对话框组件的
可见属性。如果在渲染期间将其设置为
true
,则页面将在打开对话框的情况下进行渲染

例如,如果存在和:


或者,如果同一页面中有多个表单,并且您只想检查dialog自己的表单是否:


注意:默认情况下,
{facesContext.validationFailed}
只有在使用JSF内置的验证工具(
required=“true”
等)和/或使用Fullworth
验证器
实现时才起作用。例如,如果您手动验证in-action方法并手动添加faces消息,那么这将不起作用,除非您隐式地调用自己

另见:
<p:dialog ... visible="#{facesContext.postback and facesContext.validationFailed}">
<p:dialog ... visible="#{dialogForm.submitted and facesContext.validationFailed}">
    <h:form binding="#{dialogForm}">