Redirecionar a pagina e alterar URL

0 respostas
rodrigoalves639

Galera estou tendo maior dificuldade para redirecionar minha pagina de maneira correta, estou usando phaselistener, meu metodo esta redirecinando para a pagina de login porem a URL nao esta mudando e junto com a tela de login fica uma outra pagina(minha tela de menu principal).

Estou querendo redirecionar para a tela de login e alterar tambem a URL para garantir que vai ficar aberta apenas a tela de login.

Sera que alguem pode me ajudar neste assunto, principalmente como mudar a URL, desde ja muito obrigado.

public class AuthorizationListener implements PhaseListener {

public void afterPhase(PhaseEvent event) {

    FacesContext facesContext = event.getFacesContext();
    String currentPage = facesContext.getViewRoot().getViewId();
    
    UsuarioLoginController usuario = (UsuarioLoginController) ToolJsf.getBean("usuarioLogin");

    if (usuario.getUsuario().isTransiente() && (!currentPage.contains("telasComponentes/usuarioLogin.jsp"))
            && (!currentPage.contains("telasComponentes/empresaLogin.jsp")) ) {
        
        NavigationHandler nh = facesContext.getApplication().getNavigationHandler();
        nh.handleNavigation(facesContext, null, "loginPage");
    }
}

public void beforePhase(PhaseEvent event) {
}

public PhaseId getPhaseId() {
    return PhaseId.RESTORE_VIEW;
}

}

/* loginPage forUserLogin.jsp
<lifecycle>
    <phase-listener>br.com.inloc.sessao.AuthorizationListener</phase-listener>
</lifecycle>

A minha tela forUserLogin.jsp esta assim:

Index
Criado 12 de janeiro de 2010
Respostas 0
Participantes 1