Session, [reaberto, vejam a dúvida no 4º post]

Pessoal, venho do PHP onde tudo era mais fácil e agora estou realmente programando com Java…
eu preciso criar sessions…
ja li pela net e vi inúmeras formas
uma usando factory e outra HttpSession
qual a diferença das duas?
qual a mais facil e mais utilizada?

e como trabalhar com a session? setar… pegar valores…

[]'s

[quote=f2pro]
e como trabalhar com a session? setar… pegar valores…

[]'s[/quote]
da uma olhada aqui
http://umcastec.blogspot.com/2010/04/session-em-jsp.html

Vlw cara…
mas vou simplificar aqui pra quem ainda tiver duvidas do simples funcionamento de uma session

//importa o pacote necessario
import javax.servlet.http.HttpServletResponse;

//cria a variavel session sendo objeto da classe HttpSession
HttpSession session = null;

//cria uma session e insere o valor nela
session.setAttribute("nome_da_session", "valor da session");

//pega o valor de uma session já criada
session.getAttribute("nome_da_session");

//uma maneira, nao sei se a mais correta, de verificar se existe uma session
if(session.getAttribute("nome_da_session") == null)

espero ter ajudado
[]'s

Pessoal… resolvi reabrir o tópico pois me surgiu uma duvida

estou criando as sessions mas quando dou o session.getAttribute(“nome”);
não consigo mais usar esta session, parece que ela perde o valor…
segue o exemplo de criação que estou usando.

HttpServletRequest request = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
session = request.getSession();

Objeto obj = session.getAttribute("usuario_logado");

//agora se eu precisar novamente do session.getAttribute("usuario_logado") ele me da null

vocês podem até pensar… ah. mas use a variavel obj que está usando…
clado, poderia, mas se fosse na mesma página
este erro está dando de uma pagina para outra…
alguem sabe se ao usar o getAttribute eu perco o valor da session?

abraços…

HttpServletRequest request = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
session = request.getSession();

Não entendo pq esse caminho todo.

Você está utilizando algum framework? Está fazendo por ajax. O problema pode ser como vc busca o request.

Caso vc sobrescreva o doPost por exemplo, ele já te fornece o req e você pode apenas fazer req.getSession();

Acho que vc esta misturando algo do JSF, com JSP.

para usar Session, não precisa mexer em nada no doGet ou doPost.

cara…
to usando jsf 2.0 e facelets com o primefaces…

o pior de tudo é que essas sessions tao funcionando
só dando erro quando ocorre o que falei no outro post

[quote]estou criando as sessions mas quando dou o session.getAttribute(“nome”);
não consigo mais usar esta session, parece que ela perde o valor…
segue o exemplo de criação que estou usando.

HttpServletRequest request = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
session = request.getSession();

Objeto obj = session.getAttribute(“usuario_logado”);

//agora se eu precisar novamente do session.getAttribute(“usuario_logado”) ele me da null

vocês podem até pensar… ah. mas use a variavel obj que está usando…
clado, poderia, mas se fosse na mesma página
este erro está dando de uma pagina para outra…
alguem sabe se ao usar o getAttribute eu perco o valor da session?

abraços… [/quote]