Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

JSP - višetranični izveštaj ?

[es] :: Java :: JSP - višetranični izveštaj ?

[ Pregleda: 2135 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

tiranin
Dorćol

Član broj: 37185
Poruke: 245
*.static.sbb.co.yu.



Profil

icon JSP - višetranični izveštaj ?13.11.2007. u 08:59 - pre 200 meseci
Imam npr. klasu Redovi, koja u sebi ima Vector sa oko 100 elemenata.
Hoću da kroz JSP ispišem 20-ak redova(po svakom elementu vectora jedan red), pa sa linkovima next, previous i sl. gledam sledećih, prethodnih 20 ...
Ako imam:
Code:

<% jsp:useBean id="redovi" class="Redovi" scope="session" %>

to mogu lako, onda se konstruktor klase Redovi poziva kada mi prvi put zatreba i lako posle odrađujem navigaciju kroz Vector.

Međutim, kada odem na neke druge stranice iz moje JSP aplikacije, onda mi na serveru ostane da čuči instanca klase Redovi, jer session jos uvek traje. Pošto mi aplikacija ima mnogo takvih izveštaja moze da dođe do zagušenja.

Ako stavim scope="request" ili "page" onda mi prilikom svakog prelaska na sledećih 20 ili prethodnih 20, ponovo se poziva konstruktor,što bih hteo da izbegnem.

Kako da elegantno ovo uradim ? Da li da umesto session scope-a stavim oblekat Redovi kao atribut aplikacije, pa da ga tako referenciram ? Deluje mi glupo, ali mi se čini da bi tako proradilo.
Savet, mišljenje ?
 
Odgovor na temu

debeli brka

Član broj: 52637
Poruke: 22
*.adsl-3.sezampro.yu.



Profil

icon Re: JSP - višetranični izveštaj ?13.11.2007. u 11:22 - pre 200 meseci
Mislim da ne mozes da postavljas atribute aplikacije, jer jsp sistem nema 'aplikaciju', kod svih sistema ovog tipa (za web strane) ti imas proces koji se pokrece kad korisnik zatrazi stranu, i koji se gasi kada isporuci tu stranu. Promenljive koje se na serveru cuvaju kao npr session, se cuvaju trajno, ali ne znam da li tu mozes da stavis nesto kao static?

Interesantno pitanje, u svakom slucaju.
 
Odgovor na temu

logotet
Beograd

Član broj: 49849
Poruke: 42
*.dynamic.sbb.co.yu.

Sajt: www.logotet.com


Profil

icon Re: JSP - višetranični izveštaj ?13.11.2007. u 16:30 - pre 200 meseci
Nagađam da bi to moglo da se uradi ovako:

U JSP-u koji ti predstavlja jedan izveštaj imaš
Code:
<% jsp:useBean id="redovi" class="RedoviPrvogIzvestaja" scope="session" %>

a u JSPu za drugi izveštaj
Code:
<% jsp:useBean id="redovi" class="RedoviDrugogIzvestaja" scope="session" %>
.
Pri čemu klase RedoviPrvogIzvestaja i RedoviDrugogIzvestaja nasleđuju tvoju klasu Redovi.
(Nadam se do sada da sam dobro razumeo problem).
Mislim, nisam 100% siguran, da ime(id) bean-a "redovi" može da bude aktivno samo po jednoj instanci, jer se valjda iz ServletContexta može dobiti sa getValue("redovi"). Nešto nalik na Hashtable.


Prvim pozivanjem stranice sa jednim izveštajem bi, valjda svorilo novu instancu koja bi imala id="redovi".
Ovde se verovatno stvara problem, što dok session traje, nema potrebe za novim instanciranjem, pa bi se dogodilo da ulaziš na stranicu drugog izveštaja, a session ti ima instancu klase za prvi izveštaj.(Uf, što su mi rečenice rogobatne, ali ne umem bolje).

Zato bi, tu je sad ključ moga nagađanja, do te instance trebalo doći prekoServletContexta, pa onda proveriti sa instanceof da li je željena klasa, pa ako nije kreirati je pozivom konstruktora i tako dalje.

Možda da tvoja klasa Redovi bude wrapper oko ovih pojedinačnih klasa izveštaja. što mi se čini još interesantnije, jer uvek ima samo jedna instanca, a u njoj se "smenjuju" željene klase.
Sada kada sam napisao ovo za wrapper, mislim da je zapravo to rešenje, ali me mrzi da brišem prethodni deo poruke, možda i u njoj ima nečeg interesantnog.
U svakom slučaju, javi šta si uradio, mislim da može koristitii ostalima.



 
Odgovor na temu

[es] :: Java :: JSP - višetranični izveštaj ?

[ Pregleda: 2135 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.