Oi!
Tenho uma página onde o usuário digita 2 campos numéricos.
Após clicar no botão, apresento uma caixa de confirmação, que é um p:dialog (PrimeFaces).
Após o usuário clicar em “sim” há uma validação e pode ser enviada uma mensagem assim:
FacesContext context = FacesContext.getCurrentInstance();
FacesMessage facesMessage = new FacesMessage(FacesMessage.SEVERITY_ERROR,
"Erro: ", "Sessão não iniciada, existe sessão iniciada esse ano.");
context.addMessage(null, facesMessage);
return null;
No IE a mensagem aparece no h:messages (ou o p:messages), mas não aparece no Firefox ou no Chrome.
Tentei isso:
<h:messages id="messages"/>
E depois troquei por isso:
<p:messages id="messages" showDetail="true" autoUpdate="true"/>
Agradeço qualquer ajuda! 
Está dentro de algum h:form? Se tiver faz o seguinte:
<h:form id="form">
<p:messages id="msgs" showDetail="true" autoUpdate="true" closable="true"/>
....
</h:form>
E no componente faz o update assim:
<p:commandButton ... update=":form:msgs"/>
Pelo menos o código está de acordo com o meu e pega tranquilo:
msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Dados gravados com sucesso!", null);
FacesContext.getCurrentInstance().addMessage("add", msg);
1 curtida
[quote=MiguelCP]Está dentro de algum h:form? Se tiver faz o seguinte:
<h:form id="form">
<p:messages id="msgs" showDetail="true" autoUpdate="true" closable="true"/>
....
</h:form>
E no componente faz o update assim:
<p:commandButton ... update=":form:msgs"/>
Pelo menos o código está de acordo com o meu e pega tranquilo:
msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Dados gravados com sucesso!", null);
FacesContext.getCurrentInstance().addMessage("add", msg);
[/quote]
+1 veja se esta dentro de um form!
Obrigado MiguelCP o problema era o update. d34d_d3v1l, valeu pelo mais um.
Vou editar o tópico para resolvido.
Mas vou abusar da boa vontade de voces. O p:messages já tem um estilo.
Caso queira outro estilo é melhor tentar alterar o do primefaces ou usar h:messages?
Usar 2 h:messages é ruim?
Obrigado.