| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/05/2008 12:15:22
|
fabio.nascimento
JavaTeenager
![[Avatar]](/images/avatar/e7728fab6844dee91aa0cc03c0b97bdd.jpg)
Membro desde: 21/08/2006 16:26:00
Mensagens: 159
Localização: São Paulo
Offline
|
Estou tendo problemas no Struts 2 com login usuario em minha aplicação, ao setá-lo na sessão.
Primeiramente foi criado um Inteceptor que valida o usuário e o coloca na sessao.
Toda chamada de aciton deve passar por este interceptor verificando o usuario na sessao e caso o usuario nao esteja logado envia para uma tela de login.
O problema é que estou perdendo a sessao no momento da navegacao entre as paginas.
Para resolver este problema optou-se por configurar o tomcat para que este fizesse url rewriting colocando o jsessionid diretamente na url.
Com isso caímos em outro problema:
Quando acesso uma pagina e abro outra janela do browser para acessar esta mesma URL, essa porém não passa pelo interceptor, neste caso o browser do cliente está armazenando paginas e sessões em cache? . Com isso a proxima navegacao na aplicacao o interceptor nao acha o usuario na sessao, caindo sempre na pagina de login.
Alguém saberia me dizer se existe outra maneira de implementar login de usuario na sessao com struts 2 e tomcat 5.5 ?
Grato.
This message was edited 1 time. Last update was at 08/05/2008 12:17:04
|
"It's easier to invent the future than to predict it." by Alan Kay
Twitter : www.twitter.com/fnascimento |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/05/2008 12:28:58
|
idev4web
JavaGuru
![[Avatar]](/images/avatar/687e0d2bafc7e6ec43af9c3f65b45508.jpg)
Membro desde: 22/10/2007 10:03:44
Mensagens: 208
Offline
|
Voce tem duas maneiras de trabalhar com sessao no struts2.
Voce pode usar HttpSession ou voce pode usar a sessao do struts2
1. Trabalhar com um objeto HttpSession
2.Trabalhar com objetos da sessao do struts2. Struts2 (sessao)
This message was edited 1 time. Last update was at 08/05/2008 12:45:42
|
http://www.xpandorabox.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/05/2008 12:41:36
|
fabio.nascimento
JavaTeenager
![[Avatar]](/images/avatar/e7728fab6844dee91aa0cc03c0b97bdd.jpg)
Membro desde: 21/08/2006 16:26:00
Mensagens: 159
Localização: São Paulo
Offline
|
Caro idev4web, já estamos codificando dessa forma como pode perceber em nosso código abaixo:
Na verdade o que necessitamos saber é se existe hoje uma outra forma de se trabalhar com sessão ou até mesmo uma forma de contornar o problema encontrado.
Mais uma vez.
Grato.
|
"It's easier to invent the future than to predict it." by Alan Kay
Twitter : www.twitter.com/fnascimento |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/05/2008 12:48:14
|
idev4web
JavaGuru
![[Avatar]](/images/avatar/687e0d2bafc7e6ec43af9c3f65b45508.jpg)
Membro desde: 22/10/2007 10:03:44
Mensagens: 208
Offline
|
Eu estava editando a msg. verifique a primeira msg que eu postei
|
http://www.xpandorabox.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/05/2008 13:49:29
|
fabio.nascimento
JavaTeenager
![[Avatar]](/images/avatar/e7728fab6844dee91aa0cc03c0b97bdd.jpg)
Membro desde: 21/08/2006 16:26:00
Mensagens: 159
Localização: São Paulo
Offline
|
Tentando explicar melhor nosso problema:
Desenvolvemos um interceptor que dentre outras coisas está sendo utilizado para login no sistema onde na primeira chamada a qualquer pagina da minha aplicação são realizadas as verificacoes e setado o usuario logado na sessao, conforme deveria realmente trabalhar o interceptor.
Bom...
Quando é feita uma chamada a qualquer action, o interceptor verifica se o usuario está logado e caso não esteja redireciona o usuario para tela de login.
Tal problema ocorre somente em alguns clientes, onde depois que o usuario ja acessou a pagina desejada mais que uma vez, o browser armazena esta pagina em cache. Com isso, não é chamado o interceptor e o usuario não é setado na sessao.
Após isso, qualquer outra operação acionada pelo usuario, ações essas que recuperam informações no BD, automaticamente o usuário é redirecionado para a tela de login, deixando claro que a sessão está morrendo.
Existe alguma forma de contornar este problema de cache no browser do cliente para que nao ocorra este problema? Ou ainda , uma outra maneira de implementar login de usuario no struts 2?
Abraços.
|
"It's easier to invent the future than to predict it." by Alan Kay
Twitter : www.twitter.com/fnascimento |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/05/2008 13:51:19
|
fabio.nascimento
JavaTeenager
![[Avatar]](/images/avatar/e7728fab6844dee91aa0cc03c0b97bdd.jpg)
Membro desde: 21/08/2006 16:26:00
Mensagens: 159
Localização: São Paulo
Offline
|
...
This message was edited 1 time. Last update was at 09/05/2008 13:51:53
|
"It's easier to invent the future than to predict it." by Alan Kay
Twitter : www.twitter.com/fnascimento |
|
|
 |
|
|