Bom Dia,
Tenho um Login pronto e funcionando, agora quero que quando logar, a próxima pagina consiga setar o Login para aparecer que esta logado e consequentemente quando gravar um atendimento ele ainda permaneça logado, para que possa esta gravando outros atendimentos,
Alguém tem algum exemplo ou uma dica Obrigado.
Estou desenvolvendo em JSF
Carregar Login para outra pagina JSF
1 Resposta
Boa tarde, você pode salvar seu objeto usuario na sessão, segue alguns códigos que pode te ajudar tente entender eles não só utilizar.
public static ContextoBean getContextoBean() { FacesContext context = FacesContext.getCurrentInstance(); ExternalContext external = context.getExternalContext(); HttpSession session = (HttpSession) external.getSession(true); ContextoBean contextoBean = (ContextoBean) session.getAttribute("contextoBean"); return contextoBean; }
public static void setObjetoSessao(String parametro, Object objeto) { // Busca instancia corrente da sessão ExternalContext extCon = FacesContext.getCurrentInstance().getExternalContext(); // Associação da sessão corrente com esta requisição (desta página) HttpSession session = (HttpSession) extCon.getSession(true); //TODO Verifica se já tem objeto na sessão apaga antes para atualizar - em teste - if(getObjetoSessao(parametro) != null){ deletarObjetoSessao(parametro); } // Setar objeto na sessão corrente session.setAttribute(parametro, objeto); }
/** * Pega objeto na sessão corrente, pelo seu respectivo parametro */ public static Object getObjetoSessao(String parametro) { // Busca a instancia da sessão corrente ExternalContext extCon = FacesContext.getCurrentInstance().getExternalContext(); // Associação da sessão corrente com esta requisição (desta página) HttpSession session = (HttpSession) extCon.getSession(true); // retorno de objeto inserido na sessão corrente return (session.getAttribute(parametro)); }
/** * Deleta objeto na sessão corrente, pelo seu respectivo parametro */ public static void deletarObjetoSessao(String parametro) { // Busca instancia corrente da sess�o ExternalContext extCon = FacesContext.getCurrentInstance().getExternalContext(); // Associação da sessão corrente com esta requisição (desta página) HttpSession session = (HttpSession) extCon.getSession(true); // Remove atributo da sess�o corrente session.removeAttribute(parametro); } public static FacesContext getInstance(){ return FacesContext.getCurrentInstance(); } public static HttpSession getSessao(){ FacesContext fc = ContextoUtil.getInstance(); ExternalContext ec = fc.getExternalContext(); return (HttpSession) ec.getSession(false); }
Criado 23 de julho de 2016
Ultima resposta 23 de jul. de 2016
Respostas 1
Participantes 2