[ jandrla @ 17.11.2005. 01:00 ] @
Radim na web aplikaciji u sprezi sa bazom podataka koja treba da ima
rezlicite nivoe pristupa. Interesuje me nekoliko stvari:

1) web aplikacija treba da ima neku standardnu login stranu, i u zavisnosti od
user name - a i prava pristupa korisnik ima uvid u razlicite delove aplikacije. Postoji li mogucnost nekakvog pamcenja korisnikovog login name - a tokom trajanja sesije i izbegavanje proturanja istog kao parametra requesta kada god se skace sa strane na stranu. Da li su jedina resenja neka hidden polja u formi ili dodatni atributi pri kreiranju linka na neku od strana?
Da li ovo moze da se elegantno resi pomocu Struts - a i kako?

2) Da li neko zna i moze da mi kaze nesto u vezi j_security_check - a. Kako se koristi, sta predstavlja i na koji nacin funkcionise? Ako ne primer, dobro bi mi dosla i informacija gde bih mogao da se vise informisem u vezi ovoga.

Hvala.
[ Toxter @ 17.11.2005. 11:29 ] @
Odgovor na tvoje prvo pitanje:

Ne moras da saljes kao hidden parametar strani
koju pozivas.
Mozes da koristis jsp tag jspUseBean:
<jsp:useBean id="user" scope="session" class="jspbean.User" />

Ovo podrazumeva da imas klasu User u paketu jspbean. U klasi mozes imati recimo
privatne promenjive: boolean ulogovan, int pravaPristupa, String username i njihove get/set metode.
Ako se korisnik uspesno loguje odradis:
Code:

user.setUlogovan(true);
user.setUsername(nekiUsername);
user.setPravaPristupa(nekaPravaPristupa);


jspUseBean tag stavis na sve jsp stranice i proveravas:
Code:

if(user.getUlogovan()){
//...radi nesto ako je ulogovan
  if(user.getPravaPristupa() == 1){
  // ...radi nesto ako ima prava pristupa 1
  }
}


a logout (u recimo logout.jsp) odradis ovako:
Code:

 user.setUlogovan(false);
 user.setUsername("");
 user.setPravaPristupa(0);
 session.invalidate(); //ubij sesiju
[ jandrla @ 19.11.2005. 17:25 ] @
Hvala. Probacu.