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

但是,这些消息被粗暴地显示,我希望在手动关闭它们之前将它们保留在屏幕上。

我怎样才能做到这一点?

编辑:

我调用发出消息的运行方法。
我调用了组件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));
    }
}

最佳答案

只需在咆哮标签中添加sticky =“ true”即可。

10-07 13:03