Estou fazendo um sistema em JSF com Glassfish 4, e estou querendo usar cookie para a parte de login.
Pesquisa aqui no forúm e encontrei várias formas de criar os cookies e pega-lós novamente, mas toda vez que gero os cookies e tento resgatar, somente volta o cookie da sessão do java: “JSESSIONID”.
Existe algo que eu estou fazendo de errado?
Segue fonte:
Cria os cookie
`
public static void createCookieHelper(String nameCookie, String valueCookie, Integer maxAge) {
FacesContext context = FacesContext.getCurrentInstance();
if (context != null) {
HttpSession sessao = (HttpSession) context.getExternalContext().getSession(true);
//Cria cookie
Cookie ck = new Cookie(nameCookie, valueCookie);
ck.setMaxAge(maxAge); //Apos este tempo, em segundos, o cookie expirará automaticamente
//Adiciona
((HttpServletResponse) context.getExternalContext().getResponse()).addCookie(ck);
}
}
`
Resgata os valores:
public static String getCookieHelper(String nameCookie) { //Obter cookie FacesContext ctx = FacesContext.getCurrentInstance(); if (ctx != null) { Map<String, Object> cookies = ctx.getExternalContext().getRequestCookieMap(); Cookie cookie = (Cookie) cookies.get(nameCookie); if (cookie != null) { return cookie.getValue(); } } return null; }