Martin Kuba wrote:
2)No a druhy dotaz souvisi (castecne) s tim prvnim. Opet mam formular,
odeslu ho na server - ted napr. metodou GET, cast dat si vlozim do session a vratim se z5 - na puvodni formular, kde zobrazim data, ktera mam v session.
No, a ted kdyz si stranku refresnu, tak tato data se neustale zobrazuji,
nebot jsou v session, ale to ja nechci. Chci, aby se data ze session
zobrazila pouze poprve. Po refreshi uz v sessions nebudou. V php jsem to
delal tak, ze jsem na zacatku www stranky precetl vsechno ze session a
ulozil vse do promennych a data ze session smazal. Pri refreshi uz v session
nebyly. Jak mam podobne chovani naprogramovat v STRUTS? Pres tagy? Jake?
Nebo jinak?


Pokud nechcete, aby neco bylo v session, tak to do session nedavejte.

Krucis, melo tam byt samozrejme "nebylo".

Jeste mne napadlo, ze mozna vam neni jasna idea akci ve Struts.
Kdyz prijde pozadavek z prohlizece, treba http://stroj/webapp/akce.do
tak se ve strust-config.xml vyhleda tag, ktery ma

 <action path="/akce" class=""cz.moje.MojeAction">

podle toho atributu path, a zavola se metoda execute() na specifikovane
tride. Trida ma za ukol zpracovat prichozi data a rozhodnout, ktera
stranka se ma zobrazit.

Navratovou hodnotou toho execute() je retezec (ono je to ForwardMapping, ale je to jenom obal kvuli typovosti), ktery
se pak porovnava s temi <forward> tagy, resp. s jejich "name" atributy.

 <action ...>
  <forward name="prvni" path="zobraz.jsp" />
  <forward name="druhy" path="neco.jsp" />

a pokud ten forward nema nastaveny redirect, tak se *rovnou*
(pomoci RequestDispatcher.forward()) preda rizeni
specifikovane JSP strance. Takze prohlizec to ma jako jeden pozadavek,
posle data a dostane zpatky stranku.

Pokud jste v PHP delal nejake slozitosti s neviditelnymi strankami
a redirecty, tak tady uz nemusite, protoze zpracovani prichozich dat
a zobrazeni stranky jsou rozdelene na Action a JSP stranku,
a vazba mezi nimi je pres navratovou hodnotu z Action.

Makub
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Supercomputing Center Brno             Martin Kuba
Institute of Computer Science    email: [EMAIL PROTECTED]
Masaryk University             http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ     mobil: +420-603-533775
--------------------------------------------------------------

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Odpovedet emailem