Estou concluíndo um cadastro com jsf 2 e primefaces 3, para realizar esse cadastro estou utilizando @ViewScoped no meu manager bean. Eu consigo incluir, deletar e consultar os meus dados, sendo que na hora de alterar os registros, eu vou para outra página, ai não consigo setar o meu objeto a ser alterado pelo componente <f:setPropertyActionListener, ele até seta o objeto, mas quando navega para outra tela, ele tira da sessão todo o meu manager bean, estou pensando em utilizar a anotação @ManagedProperty.
Alguém tem uma solução melhor ou essa é a melhor maneira de fazer esse tipo de trabalho com jsf 2.
Isso acontece porque quando vc utiliza o @ViewScoped ele mantem a sessão somente na tela que vc está usando. Quando você faz a requisição para outra tela, a sessão é fechada…
Para que você consiga usar dessa forma, altere o @ViewScoped para @SessionScoped.
Mas se eu utilizar @SessionScoped eu vou colocar todo o meu managerbean na sessão do servidor o que é muito ruim para a aplicação. Vai funcionar momentaneamente, mas pra frente traz problemas maiores