Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 5 odgovora
  • 3.374 pregleda

Najnovija ↓

Pitanje vezano za session? 03.03.2009. u 12:36 · pre 215 meseci #1
Pozdrav!

Imam jednu dilemu. Ako sa
HttpSessio session = request.getSession();
Object object = new Object();

sessio.setAttribute("mojeime", object);

dodam atribut u session u jednom servletu koji sluzi kao greeting servlet
a u drugom koji sluzi kao response
moram li ponovo formirati session objekat ili je dovoljno :

request.removeAttribute("mojeime");

da bi uklinila taj atribut
i kakva je razlika izmedju :
session.removeAttribute("mojeime");
i
request.removeAttribute("mojeime");

Pozdrav,
Biljana



Potpis
Biljana
Re: Pitanje vezano za session? 03.03.2009. u 14:42 · pre 215 meseci #3
Znaci da bi uklonila objekat u nekoj sesion koji sam dodala u predhodnom servletu, moram posto se ne vidi u drugom servletu da ponovo izvrsim
HttpSession session = request. getSession();

pitanje je da li je to isti session ako ga ponovo formiram kao onaj u koji sam dodala atribut u prethodnom servletu.

Ako pozivaju iste funkcije u listeneru koji su vezani za removeAttribute akciju u session, a oni za HttpSessinAttributeEvant, kako nisu isti
request.removeAttribute();
I session.removeAttribute();

radila sam program i aktiviralo je te listenere i u njim afunkcije koje su se desavale kad se desi taj Evant.
Potpis
Biljana
Re: Pitanje vezano za session? 03.03.2009. u 15:22 · pre 215 meseci #4
Web aplikacije imaju vise slojeva, sad ne mogu da se setim svih ali uglavnom izgleda ovako:
application layer
session layer
request layer
page layer

Ako definises neki atribut u application sloju, onda ce taj atribut da postoji tamo sve dok se ne prekine aplikacija (redeployujes, iskljucis web container...). Ako definises neki atribut u session sloju, onda taj atribut postoji sve dok postoji i sesija. Atribut u request sloju postoji sve dok traje jedan request. Npr. korisnik ide na servlet HelloWorld, tamo namestis neki atribut u request layeru, pa posle prosledis kontrolu nekom drugom servletu, pa taj prosledi kontrolu nekoj JSP stranici, i za sve to vreme, svi ti servleti i JSP stranice ce imati pristup toj promenljivi. Ali kada se jednom zaustavi request, vrednost ce se obrisati. Page layer koristis u JSP stranici i vrednost ce postojati samo unutar te stranice.
Re: Pitanje vezano za session? 04.03.2009. u 22:08 · pre 215 meseci #5
Citat:
BILjana Cepic: 

HttpSession session = request. getSession();

pitanje je da li je to isti session ako ga ponovo formiram kao onaj u koji sam dodala atribut u prethodnom servletu.



Ako su u browser-u iskljuceni cookies onda request.getSession() uvek kreira novi session objekat (sem ako ne radis URL rewriting).

Ako hoces da proveris da li sessija vec postoji, mozes to uraditi ovako:

Code:

HttpSession session = request.getSession(false);

if(session == null) {
 // sesija ne postoji
} else {
// sessija postoji, atributi koje si dodala u prethodnim serletima su tu
}
Re: Pitanje vezano za session? 12.03.2009. u 22:24 · pre 214 meseci #6
Pozdarav!

Moje
removeAttribute(HttpSessionAttributeEvant) se aktivirao sa
request.getSession().invalidate();
znaci to je taj session u koji sam ja prethodno sa
request.getSession().setAttribute("myname",object);
dodala taj atribut u prvom servletu.

Hvala gajo!!!
Potpis
Biljana
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme