[VRaptor] Redirecionar após Timeout

Olá,
busquei aqui no fórum algo a respeito do redirect e encontrei o seguinte tópico
http://www.guj.com.br/java/275795-resolvido-redirecionar-para-login-apos-timeout--vraptor

tentei implementar algo parecido no meu projeto mas não obtive sucesso.

Gostaria de ajuda no redirect do meu método.

Segue código da minha classe que faz o intercept.

@Intercepts
public class LoginInterceptor implements Interceptor {

	private Result result;
	private UsuarioSessao userSession;

	public LoginInterceptor(Result result, UsuarioSessao userSession) {
		this.result = result;
		this.userSession = userSession;
	}

	public boolean accepts(ResourceMethod method) {
		return true;

	}

	public void intercept(InterceptorStack stack, ResourceMethod method,
			Object resourceInstance) {
		boolean isRestritoController = resourceInstance.getClass().equals(
				RestritoController.class);

		if (isRestritoController && !userSession.isLogado()) {
			result.redirectTo(IndexController.class).index();
		} else {
			stack.next(method, resourceInstance);
		}

	}

}

Você vai ter só 1 controller para ser restrito? Se algum dia você precisar adicionar outra lógica aos usuários restritos, você vai colocar tudo dentro desse controller?

Ai ele vai ficar enorme…

Sugiro você criar uma annotation @Restrito e anotar as actions e controllers restritos…

Ai você verifica se o controller ou a action possuem a annotation e deixa passar ou não.

siga a dica do Rafael, pra qlr duvida baixe a apostila da caelum fj28, lá tem esse exemplo bem explicado. :thumbup:

em todo caso o que está dando errado?

está passando por esse interceptor? ele chega a rodar a linha do redirect?

Eu reduzi o tempo de timeout no web.xml pra testar e o redirecionamento na verdade está funcionando.

O problema é em um componente jQuery que está se comportando da seguinte forma: se deixarmos ele aberto e o timeout exceder o sistema não acusa o encerramento da sessão.

Vou ter que observar um pouco mais desse componente.

Você quer que o sistema redirecione para a página inicial assim que a sessão for encerrada, sem depender da interação do usuário?

Então, na verdade assim que esse componente for fechado(é um componente que abre detalhes de uma compra, por exemplo) ele tem que redirecionar para a página inicial. O problema é na notificação do timeout do servidor(web.xml) para o componente

Vou verificar aqui, qualquer coisa posto algo.

Vou ler essa apostila. Obrigado.