Mostrar Mensagem Passando de Uma Página para Outra

Olá, pessoal.
Vi nesse link http://www.guj.com.br/java/259149-resolvidomensagem-de-sistema-em-componente-primefaces-growl-nao-quer-aparecer/2 que o cara tinha mais ou menos a mesma dúvida que eu. Porém, não consegui resolver através desse tópico.
Talvez não esteja enxergando alguma coisa.

O caso é que tenho uma página de busca onde, dado os critérios da busca, mostro os funcionários em um dataTable.
Para cada registro exite um botão “Alterar”.
Clicando nesse botão, eu passo para uma outra página de cadastro, com os campos do funcionário preenchidos.
Clico em salvar e volto para a página de busca. E é nesse momento que quero mostrar uma mensagem através do p:growl.

Segue o código do botão Alterar da tela de busca:

<p:column> <h:form> <p:button outcome="/funcionario/form" value="Alterar"> <f:param name="codigoFilial" value="#{cadastradoPor.filial.codigo}"/> <f:param name="matricula" value="#{cadastradoPor.codigo}"/> </p:button> </h:form> </p:column>

Na página de cadastro, onde é feita a alteração, chamo o método save abaixo:

public String save(){ funcionarioService.save(funcionario); facesContext.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,"Aviso","Funcionário alterado com sucesso!")); return "/funcionarios.jsf"; }

Sem tentar inserir a mensagem, funciona tudo perfeitamente.
Quando tento colocar a mensagem, recebo o um java.lang.IllegalStateException.

Não sei se tem a ver, pois estou começando agora a entender um pouco dessas annotations, mas meu controller está marcado com as annotations

@ManagedBean @ViewScoped

Obrigado a todos!

E ai Blz!!

Vc já testou com @SessionScope ao invés do @ViewScoped?

Cara, eu atééé pensei em testar com ele, mas não seria legal ter esse objeto ativo durante toda a sessão não.
Então, mesmo que funcione assim, não queria deixar como SessionScoped =/

Queria saber se tinha como fazer de outra forma. Sem ter que manter em sessão. =D

Mas muito obrigado de qq forma.

por sessionScoped eu sei que dá pq faço dessa maneira

passa no command save o :idForm:idMessages da pagina de listagem

vê se isso te ajuda amigo:
http://uaihebert.com/?p=499

[quote=dan20]vê se isso te ajuda amigo:
http://uaihebert.com/?p=499[/quote]

Ajudou sim, amigo.
Resolvi adicionando a classe MultiPageMessagesSupport e o lifecycle no faces-config.xml

Muito obrigado a vc e a todos que me ajudaram! \o/

[quote=Kura][quote=dan20]vê se isso te ajuda amigo:
http://uaihebert.com/?p=499[/quote]

Ajudou sim, amigo.
Resolvi adicionando a classe MultiPageMessagesSupport e o lifecycle no faces-config.xml

Muito obrigado a vc e a todos que me ajudaram! \o/[/quote]

Procure sobre KeepMessages do jsf nem vai precisar de config no faces-config
eu nao testei com ViewScopo mas teste …

[quote=tmvolpato][quote=Kura][quote=dan20]vê se isso te ajuda amigo:
http://uaihebert.com/?p=499[/quote]

Ajudou sim, amigo.
Resolvi adicionando a classe MultiPageMessagesSupport e o lifecycle no faces-config.xml

Muito obrigado a vc e a todos que me ajudaram! \o/[/quote]

Procure sobre KeepMessages do jsf nem vai precisar de config no faces-config
eu nao testei com ViewScopo mas teste …[/quote]

Entao, cara… ja havia tentado com o KeepMessages, mas nao tinha rolado msm assim. Mas funfou om a classe citada.

Valeu!!