Logout vraptor (Resolvido)

4 respostas
F

Como faco o logout no vraptor?
Eu coloquei o user = null e redirecionei para a pagina de login, porem se volta a pagina, o usuário ainda esta logado.

@Get
@Path("/logout")
@Public
public void logout() {
    this.userInfo = null;
    this.result.redirectTo(this).login();
}

Agradeço desde já!

4 Respostas

Rafael_Guerreiro

Se o usuário não estiver logado, ele está sendo barrado?
Mostra para mim o seu interceptor…

G

A forma mais segura de fazer logout é chamar o métod invalidate do HttpSession. Injete ela no construtor, e chame o método, que invalida toda a HttpSession e remove todos objetos.

F

coloquei o invalidade e funcionou certinho…

@Get  
@Path("/logout")  
@Public  
public void logout() {  
    this.httpSession.invalidate();
    this.userInfo = null;  
    this.result.redirectTo(this).login();  
}

Obrigado!

G

Mesmo assim preste atenção na dica do Rafael Guerreiro, pois teu interceptor pode não estar fazendo o bloqueio corretamente.

Criado 17 de maio de 2012
Ultima resposta 17 de mai. de 2012
Respostas 4
Participantes 3