如果 jsf 客户端验证失败,则无法更改 Spring Webflow 状态



我有一个用于创建记录的简单表单-它有一些必需的字段和两个按钮,一个用于提交,一个用于取消。问题是取消按钮不起作用(它实际上总是重新加载视图以创建记录),除非输入了所有必需的字段。字段看起来像这样

<h:inputText id="name"
    value="#{userController.User.name}"
    required="true"
    requiredMessage="This field is required"
    maxlength="11" tabindex="22" />

在spring webflow定义中,我添加了validation="false",也尝试了binding="false",但它没有帮助,虽然我不确定它是否相关,因为我有jsf验证的问题,而不是spring webflow验证。还要补充的是,我正在使用Richfaces 4,它可能是有用的信息。

提前感谢您的回答。

Stefan

您的问题与Spring Webflows或Richfaces无关,而是与处理对服务器的每个请求的标准JSF生命周期有关。

这个周期由几个阶段组成(谷歌"jsf生命周期"有大量的插图和解释)。其中之一是处理所有验证器。如果验证失败,将终止循环并发送响应(当前页面+消息)。将无法到达处理取消按钮的方法调用阶段。

当将immediate=true添加到按钮时,它将把该按钮的处理移动到流程验证阶段,因此在处理验证失败事件(从而重新呈现页面)之前,它将被称为

尝试在取消按钮中添加immediate="true" XHTML

相关内容

  • 没有找到相关文章

最新更新