autoUpdate不适用于p:growl和p:primefaces中的消息

时间:2013-09-06 18:12:20

标签: jsf-2 primefaces

我正在尝试使用autoUpdate属性测试p:growl和p:消息,但它不起作用,但它是一个非常简单的代码。

我的页面(primes.xhtml):

<h:head/>
<h:body>
    <h:form>
        <p:messages autoUpdate="true"/>
        <p:commandButton action="#{dateBean.testErr}"/>
    </h:form>
</h:body>

DateBean类:

@ManagedBean
public class DateBean {

    public String testErr(){

        FacesContext context = FacesContext.getCurrentInstance();
        context.addMessage(null, new FacesMessage("test error"));
        return null;
    }
}

每当我点击commandButton时,服务器都会给我以下警告:

“警告:有一些未处理的FacesMessages,这意味着并非每个FacesMessage都有机会被渲染。 这些未处理的FacesMessages是: - 测试错误“

但是消息不会显示在页面中,也不会咆哮。

1 个答案:

答案 0 :(得分:0)

最新:Primefaces 7不支持此p:growl和p:messages autoUpdate =“ true” 属性。只是根本不起作用,您会收到上面的服务器警告:“警告:有一些未处理的FacesMessages,...”

使用此属性代替autoUpdate =“ true”属性:

<p:messages>
    <p:autoUpdate />
</p:messages>

还有这个

<p:growl id="growl" showDetail="true" sticky="true">
    <p:autoUpdate />
</p:growl>