Olá amigos, estou com um problema aqui ao utilizar a implementação do JSF normal.
Quando faço:
FacesContext facesContext = FacesContext.getCurrentInstance();
HttpSession session = (HttpSession) facesContext.getExternalContext().getSession(false);
Vem nulo.
Já na implementação do MyFaces vem preenchida. O problema é que não posso utilizar a implementação do MyFaces.
E só consigo obter uma sessão caso coloque o getSession(TRUE);
Ja testei com umas 8 versões, da 2.0 a 2.22 e nada.
Alguem?
E você sabe o que faz o false assim como o true ali?
Sim, acho que sei.
o false verifica se ja existe uma caso n, cria, ja o true cria uma sem verificar.
[quote=darksteel3000]Sim, acho que sei.
o false verifica se ja existe uma caso n, cria, ja o true cria uma sem verificar.[/quote]E de onde você tirou essa informação?
Pelo visto seu teste está dando errado né?
vi em um artigo a uns meses.
Cara o getSession(false), só vai te retorna uma sessão SE já existir uma associado a este cliente, ou seja se NÃO existir nenhuma sessão criada SEMPRE ele retornará null.
Se o seu objetivo é obter uma sessão, você pode usar getSession() ou getSession(true) , esses métodos fazem a mesma coisa, ou ele cria uma sessão nova ou retorna uma já existente.
Cara vlw mesmo. alguem tinha de me ajudar. obrigado