Logout em JSF! URGENTE!

Bom dia caros amigos do GUJ!

Estou encarando certas dificuldades em realizar um logout com sucesso em JSF! Ao clicar em um botão LOGOUT na minha página, a mesma restorna para a página de LOGIN. Até aí tudo bem. Mas depois, á partir desta página de LOGIN se tento logar novamente, acho que ele abre uma sessão nova para mim porém o conteúdo da minha página não aparece corretamente, ou seja, os conteúdos buscados dos BackingBeans! O que está acontecendo com esses meus beans alguem sabe? Estão invalidados ou algo assim? Todos eles estao com o escopo SESSION. Aqui, o codigo que utilizo para realizar o logout:

public String logout(){
setUsuario(new Usuarios());
_autenticado = false;

	FacesContext facesContext = FacesContext.getCurrentInstance(); 
	HttpSession session = (HttpSession) facesContext.getExternalContext().getSession(false); 
	session.invalidate(); 
	
	status = "logout";

	return status; 

}

Alguem poderia me ajudar pessoal?

Valeuuuu!

[quote=RenZasso]Bom dia caros amigos do GUJ!

Estou encarando certas dificuldades em realizar um logout com sucesso em JSF! Ao clicar em um botão LOGOUT na minha página, a mesma restorna para a página de LOGIN. Até aí tudo bem. Mas depois, á partir desta página de LOGIN se tento logar novamente, acho que ele abre uma sessão nova para mim porém o conteúdo da minha página não aparece corretamente, ou seja, os conteúdos buscados dos BackingBeans! O que está acontecendo com esses meus beans alguem sabe? Estão invalidados ou algo assim? Todos eles estao com o escopo SESSION. Aqui, o codigo que utilizo para realizar o logout:

public String logout(){
setUsuario(new Usuarios());
_autenticado = false;

	FacesContext facesContext = FacesContext.getCurrentInstance(); 
	HttpSession session = (HttpSession) facesContext.getExternalContext().getSession(false); 
	session.invalidate(); 
	
	status = "logout";

	return status; 

}

Alguem poderia me ajudar pessoal?

Valeuuuu![/quote]
Bastante trivial, vc está jogando agua no seu fogo!
Se os seus beans que ajudam a formar a pagina estão na seção e esta por sua vez é invalidade a consequencia é a má formação da pagina.
O que deve ser feito é a colocação desses seus beans no escopo de aplicação em vez do de seção :idea:

Fala Carlos_df_jar

Primeiramente, agradeço pela força aí parceiro! Então cara, já obtive uma evolução! Antes quando eu voltava pra página de login e entrava com login e senha novamente, ele nao carregava os beans corretamente. Agora, quando estou dando logout e entrando denovo com o mesmo LOgin e Senha ele volta legalzinho pra página, porém, se entrou com outro login e senha ele entra na página anterior. Hunf estranho viu cara! Não entendo muito sobre os escopos do jsf, se você ou alguém puder dar uma força e agradeço!

Vlwwww!
Abraços!

[quote=RenZasso]Fala Carlos_df_jar

Primeiramente, agradeço pela força aí parceiro! Então cara, já obtive uma evolução! Antes quando eu voltava pra página de login e entrava com login e senha novamente, ele nao carregava os beans corretamente. Agora, quando estou dando logout e entrando denovo com o mesmo LOgin e Senha ele volta legalzinho pra página, porém, se entrou com outro login e senha ele entra na página anterior. Hunf estranho viu cara! Não entendo muito sobre os escopos do jsf, se você ou alguém puder dar uma força e agradeço!

Vlwwww!
Abraços![/quote]
Bom dia, vou tentar ser mais direto na minha explicação, vc deve colocar os seus beans de construção da página no contexto da aplicação, eis uma meneira de se obter o contexto da aplicação:

[code]public class MyContexListener implements ServletContextListener {

     private DatabaseManager manager = null;

   public void contextInitialized(ServletContextEvent event){
           try{   
               ServletContext context =  event.getServletContext();
               String url = context.getInitParameter("databaseUrl");
               String login = context.getInitParameter("databaseLogin");
               String password = context.getInitParameter("databasePassword");
               manager = new DatabaseManager(url, login, password);
               context.setAttribute("databaseManager", manager);
           }
           catch(Exception e){}
     }

}[/code]