如何保持FacesMessage显示

时间:2014-03-11 15:21:55

标签: jsf primefaces

我在我的应用程序中显示消息

然而,消息显示得非常好,我想将它们保留在屏幕上,直到它们被手动关闭。

我怎样才能实现这个目标?

编辑:

我调用了发出消息的run方法。 我调用组件pbAjax然后更新growl元素

我用

<p:growl id="growl" />  

<p:commandButton value="Run"  actionListener="#{myBean.run}"    id="btnSubmitCreation" onclick="PF('pbAjax').start();" 

<p:progressBar widgetVar="pbAjax" ajax="true" value="#{progressBean.progress}"  styleClass="animated" >
    <p:ajax event="complete" listener="#{controleBean.onComplete}" update="growl" oncomplete="startButton2.enable()"/>                            
</p:progressBar>

Java代码:

public void run() {
    ...
    ...
    List<String> messages = expResult.getMessages();
    for (String message:messages){
       FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,message,message));  
    }
} 

1 个答案:

答案 0 :(得分:4)

只需在growl标签中添加sticky =“true”。