Scope JSF

Boa noite, estou desenvolvendo uma aplicação em JSF e me surgiram alguns problemas e gostaria de compartilhar e quem sabe alguém possa me explicar o porque desses problemas.

Quando há apenas uma pessoa acessando a aplicação funciona normalmente o problema está quando duas pessoas tentam acessar a mesma página, as vezes eu recebo uma mensagem de bad gateway 404 outras vezes mistura os dados de um usuário com o do outro que está acessando, existe alguma configuração que eu tenha que fazer para que os Objetos sejam únicos para cada usuário logado? A solução mais prática que eu encontrei foi no meu faces-config declarar o meu managedbean com o scope session, mas não sei se é a melhor forma.

Se alguém souber o porque disso acontecer e puder explicar como solucionar fico grato.

Markin,

Poderia nos descrever o ambiente? (AppServer, etc)

Claro, é tomcat 6 ja tentei com glassfish e deu o mesmo problema, java 6 maquina virtual started com 256mb, bom acho que é isso. Qualquer coisa me pergunte e obrigado pelo interesse :slight_smile:

Eu acho que um usuario deve ficar preso na sessao pois ele eh usuario,
Toda vez que tu vai pegar uma permissao tu vai buscar por ele… se ele possui tal permissao!
eu nao vejo como um problema o usuario na sessao!
O que teria de problema eh tu ficar jogando todos teus objetos da tua aplicacao na sessao… ai sim seria um problema

Então, o usuário eu mantenho na sessão o problema é que se dois usuários tentarem fazer a mesma operação os dados se conflitam, por exemplo, em uma tela de cadastro de Clientes, se dois usuários tentarem cadastrar um cliente ao mesmo tempo os dados desse formulário se conflitam. Um usuário começa a navegar nos dados do outro.

Humm

Nunca tinha pensado por esse lado por que ocorreria isto!
Vamos ver por outro lado! O bean do cadastro esta em qual scope? Se ele estiver no session… muito cuidado… pois dados deste bean vao ficar sendo visualizados por outros que acessarem a mesma pagina… se nao estiver no session… mais se estiver entre o session e o request… que e’ utilizado por tags por exemplo como <a4j:keepAlive />… dai pode ser tbm por isso…

Cuide onde estao seus beans e os scopes dele…
Pois se tiver em session… toda vez que voce direcionar para o form de cadastro… acho que deve setar os valores como null! e assim processeguir! o que pode acontece e’ que dai vai continua o conflito!

Entao de uma lida sobre scopes de beans…

Da uma olhada

Oi Jonathan, desculpe a demora em responder vou dar uma olhada nesse link que você passou se encontrar qual era o problema eu posto aqui a solução que consegui.