JSF: Como armazenar o estado da árvore de componentes entre telas?

5 respostas
C

Pessoal,

É possível armazenar o estado da árvore de componentes ao navegar entre telas?

Objetivo:

  • Acessar a tela de cadastro de estoque.
  • Preencher algumas informações.
  • Selecionar um fornecedor.
  • Se não tiver o fornecedor, acessar a tela de fornecedor, cadastrar o fornecedor e voltar à tela anterior (estoque) para continuar o cadastro, sem perder as informações preenchidas anteriormente.

Estou usando JSF 2.0 com Facelets e PrimeFaces, nenhum framework sobre o JSF.

Li sobre o saveState do Tomahawk, mas é possível implementar sem o Tomahawk ou qualquer outro framework?

Atte,

5 Respostas

sammers21

Kra tente colocar as informações na session ou na conversation ao fazer isso provavelmente funcionará!!!

Flavio_Almeida

Eu consigo resolver este problema com Richfaces. Estou curioso em saber como você resolverá usando primefaces.

P

Com o scope session você consegue resolver isso.

Flavio_Almeida

Colocar em escopo de sessão resolve o problema, mas é um tiro de bazuca. No Richfaces eu uso rich:KeepAlive.

finotti

Eu utilizo o @ViewScope para substituir o <t:saveState> e o <a4j:keepAlive> entre os requests na mesma página.
Como você vai acessar outra página, sugiro:
Criar um @CustomScoped - veja esse exemplo
ou
Usar a anotação @ConversationScoped do JEE6 junto com a @Named ao invés de @ManagedBean.

Criado 25 de janeiro de 2011
Ultima resposta 25 de jan. de 2011
Respostas 5
Participantes 5