Boa noite pessoal,
Estou com a seguinte duvida: Eu tenho um Bean chamado usuarioBean, nele eu controlo todas as operações que podem ser feitas com os usuários que são: incluir, alterar, alterar senha e excluir. Para cada operação dessa eu tenho uma view (Tela XHTML) diferente.
Dado o cenário descrito eu tenho as seguintes duvidas.
1º É correto eu ter só um bean controlando todas as funcionalidades que podem ser feitas com um usuário ? ou seria melhor eu dividir em outros Bean’s ?
2º Esse meu bean tem o escopo de sessão (@SessionScoped). Só que vamos supor que eu entrei no sistema agora pela primeira vez e vou realizar o meu cadastro. Com isso vou chamar o método incluir do meu bean que foi informado mais acima (usuarioBean). Apos realizar o cadastro eu posso logar no sistema com o novo cadastro. Esse comportamento não seria mais recomendando num escopo de requisição ? Pois apos clicar no botão de incluir e mandar a requisição, meu Bean poderia ser esquecido pois eu iria assim fazer o login com o usuário que eu acabei de cadastrar ou com qualquer outro usuário (Caso eu esteja cadastrando outra conta e tenha outra conta para me logar). Se vocês acharem que o comportamento de incluir deve ser no escopo de Requisição, o que eu faria com os outros comportamentos (Alterar, Excluir…) ? Pois estes comportamentos só podem ser realizados quando o usuário se encontra logado no sistema então devem ser do escopo de sessão para eu poder manter no bean o estado dos dados do usuário a cada requisição. Como eu só estou utilizando 1 Bean para todos os comportamentos das view eu só posso escolher um dos escopos citados.
Espero não ter viajado muito nas duvidas.
Estou estudando o framework JSF a pouco tempo e me deparei com essas duvidas.
Obrigado a todos.