Bom dia a todos,
Estou com o seguinte problema: no meu web.xml determinei que o tempo da minha sessão é 10 minutos. O problema é que o meu BEAN que está definido como: ViewScoped está durando apenas o tempo da sessão, portanto qualquer página que eu abra do sistema, se eu deixar ela aberta mais que 10 minutos e posteriormente for mexer na página, alterar um combo, chamar um botão, não funciona, a pagina não consegue mais conversar com o bean após 10 minutos que ela está aberta.
Todos os componentes das minhas paginas são quase todos do prime.
Agradeço desde já a atenção de todos.
esta correto, se sua sessao eh de 10 minutos, vai perder o contato com o managedBean mesmo.
Que bad, tem alguma maneira de arrumar isso, usar filter para que se o bean já estiver sido perdido eu instanciar ele de novo?? Porque se não o usuário vai deixar a pagina aberta e dai não funciona mais os campos… Isso é horrível…
Abraço…
tem sim, aumente o tempo da sessao.
Mas apenas aumentar o tempo da sessão ira continuar com o mesmo problema, se o usuário deixar muito tempo a página aperta, se passar o tempo da sessão quando o usuário for mexer na página ela vai estar travada, portanto aumentar o tempo não é uma solução.
Grato pela sua atenção.
quando a sessao cai, a conexao com o servidor eh perdida e o usuario deve entrar novamente na pagina, o correto eh direcionar ele para a pagina de login novamente. e comecar tudo denovo.
se os dados da managed beam forem muito importantes ao ponto de ter que salvar ate mesmo numa possivel perda de energia, armazene eles na base de dados ou algo do tipo depois recupere as informacoes.
Sim, quando a sessão cai deve perder a conexão com o servidor mesmo, mas mesmo sendo ViewScoped, que até onde eu sei deve durar até que o usuário vá para outra página??
Não estou falando de o usuário estar logado no sistema. Em qualquer tela do sistema, vamos dizer a index, se ele abrir ela e deixar aberto depois do tempo da sessão ela não funciona mais.
Tem como eu verificar no filter se a página que ele está não precisa de login e caso ela perdeu a conexão com o bean atualizar a página que ele está.
Grato…
Sim, quando a sessão cai deve perder a conexão com o servidor mesmo, mas mesmo sendo ViewScoped, que até onde eu sei deve durar até que o usuário vá para outra página??
sim e nao. rssss
Se a sessao estiver viva ele vai durar ate o cara mudar de pagina, mas se a sessao morreu ele morre tambem.
Tem alguma maneira de verificar se ele perdeu conexão com o servidor e voltar ele na página que ele estava?
Oq vc poderia fazer um ping para manter a sessão aberta. http://www.guj.com.br/ping_session.jsp
Assim, enquanto o usuário deixar a página aberta a sessão dele ficará aberta.
Mas assim como o mauricioadldisse, não existe como “recriar” uma sessão.
Ou você não deixe que ela morra, ou então salve oq vc precisa em cookies (não aconselhável) para quando o usuário tentar navegar novamente ele tenha os últimos dados.
Então como eu posso arrumar este problema, do usuário entrar na página index e deixar o página aberta até que a conexão com o servidor caia??
Tem algum javascrip para verificar isso e dar um reload na página ou alguma coisa no filter? Pq eu só não quero que a página do cara fique aberta e na hora que ele for usar a mesma, ele não consiga fazer nada na página.
Abraços…
[quote=cristiancra]Então como eu posso arrumar este problema, do usuário entrar na página index e deixar o página aberta até que a conexão com o servidor caia??
Tem algum javascrip para verificar isso e dar um reload na página ou alguma coisa no filter? Pq eu só não quero que a página do cara fique aberta e na hora que ele for usar a mesma, ele não consiga fazer nada na página.
Abraços…[/quote]Você terá que utilizar ajax para isso. Ficar disparando uma requisição qualquer no servidor para manter a conexão do usuário aberta.
Olá amigos,
Muito interessante esse post, principalmente pq estou com esse problema agora. haha
Como faço para que quando a autenticação caia, o usuário seja direcionado novamente para a autenticação?
Abraços
[quote=prog.tiago]Olá amigos,
Muito interessante esse post, principalmente pq estou com esse problema agora. haha
Como faço para que quando a autenticação caia, o usuário seja direcionado novamente para a autenticação?
Abraços[/quote]Você poderia criar um filter para caso o cara não estivesse logado você o manda para a tela de login. ^^