使用新的p:autoUpdate组件

时间:2018-04-23 08:14:34

标签: jsf primefaces forward

更新到PrimeFaces 6.2之后,我一直用新的p:autoUpdate子组件替换p:messages的过时autoUpdate属性。

在一个案例中,它不像以前那样工作。我有一个 login.xhtml 页面,如果未填写用户名,则会向前推送一个页面:

if (username == null || username.trim().equals("")) {
    FacesMessage message = Utils.getMessageFromResourceFile("error.login.userName.required");
    FacesContext.getCurrentInstance().addMessage("loginForm", message);
    return "/login";
}

在同一页面中,有一条p:消息,当autoUpdate被设置为属性时会显示错误:

<p:messages id="loginMessages" for="loginForm" autoUpdate="true" showDetail="false" closable="true" showIcon="false"/>

但是当用p:autoUpdate组件替换属性时,它不再显示它:

<p:messages id="loginMessages" for="loginForm" showDetail="false" closable="true" showIcon="false">
    <p:autoUpdate/>
</p:messages>

知道我做错了什么吗?

1 个答案:

答案 0 :(得分:0)

我遇到了类似的问题,并通过在方法(而不是“ / login”)中返回null来解决了该问题。我在这里找到了解决方案:https://forum.primefaces.org/viewtopic.php?t=55471