如何使用Primefaces的p:growl并重定向到页面

ark*_*tos 12 jsf redirect growl primefaces

嗨我是jsf环境中的新手,我试图更新一个primefaces咆哮,然后从commandButton动作重定向到一个页面.

 <p:commandButton value="Guardar"  action="#{AgendamientoMBean.procesaAgendamientoJ()}" 
 update="growlDetalle" />  
Run Code Online (Sandbox Code Playgroud)

托管bean代码

   FacesContext context = FacesContext.getCurrentInstance();
   context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, descripcion, detalle));
   ....
   ....
    return "agp_bandeja_citas_llamadas?faces-redirect=true";
Run Code Online (Sandbox Code Playgroud)

这只是重定向到页面,但没有显示我的咆哮消息,我测试了如果更改我的方法不返回页面消息确实显示..

我试图更新我重定向的页面的咆哮,但我猜这是不可能的.

我认为当重定向时我失去了更新功能,因为我现在正在新页面中.

有没有办法告诉jsf先做更新,然后重定向?

希望你能提前帮助我

Mat*_*ndy 46

重定向期间消息丢失.您可以使用闪光灯来保留信息.

在从action方法返回之前添加以下内容:

FacesContext context = FacesContext.getCurrentInstance();
context.getExternalContext().getFlash().setKeepMessages(true);
Run Code Online (Sandbox Code Playgroud)

  • 请注意,与Mojarra一起使用时,此方法有一个特殊的错误:它不起作用,然后重定向转到不同的路径.如果当前页面和目标页面位于同一路径(URL中的同一文件夹),那么它将正常工作.另见http://java.net/jira/browse/JAVASERVERFACES-1877 (8认同)