Oh, da weiß ich gar nicht, wo ich anfangen soll.
Mal ganz grundsätzlich: Ihr sollt JSPs and JavaBeans verwenden, richtig? JavaBeans sind letztlich ganz normale, einfache Java-Klassen. Demgegenüber sind JSPs HTML-Seiten, die Java-Code enthalten. Dieser Code wird bereits auf dem Server ausgeführt, zu einer puren HTML-Seite "gerendert" und dann rüber an den Client in dessen WebBrowser geschickt. Soweit kannst Du mir folgen?
Vermutlich möchte Dein Prof., dass Du JavaBeans verwendest, weil man die so schön einfach in JSPs ansprechen kann. Dementsprechend solltest Du eine JavaBean haben, die z. B. Person heißt, etwa so (ich konzentriere mich im Folgenden auf das Wesentliche - vieles ist weggelassen, es soll nur der Kern gezeigt werden):
Code:
public class Benutzer implements Serializable {
private String id;
public String getId() {
return id;
}
}
Ich gehe davon aus, dass Ihr bereits auf die Datenbank mit JPA oder Hibernate zugreift und von dort die Benutzer holt. Wahrscheinlich habt Ihr bereits eine Klasse 'Benutzer', die mit @Entity annotiert ist.
Jetzt brauchst Du erstmal eine JSP, über die sich der Benutzer authentifizieren kann. Habt Ihr das schon? Wenn der Anwender dort auf 'submit' klickt, dann werden seine Daten (Benutzername/Passwort) auf dem Server verarbeitet und in seiner HttpSession (Begriff bekannt? Das ist ein grundlegendes Konzept, wenn man mit Java dynamische Websites erstellt --> googeln!) wird das zugehörige Benutzer-Objekt hinterlegt. Und genau auf dieses Objekt greifen wir später zu, um Elemente auf weiteren JSP-Seiten anzuzeigen/auszublenden.
Nun kommen wir zu Deinem eigentlichen Problem. In der JSP, die Deine Seite beschreibt, sollen nun Elemente ausgeblendet werden. Das könnte so aussehen (ich verwende die Scriptlet-Syntax, damit geht es am schnellsten):
Code:
<%
String id = session.getAttribute("Benutzer");
boolean bearbeitenErlaubt = id.startsWith("L");
%>
<HTML>
<BODY>
<%
if (bearbeitenErlaubt) {
%>
<button type="button">Datensatz bearbeiten</button>
<%
}
%>
</BODY>
</HTML>
Noch eine Anmerkung: Dein Konzept hier wirkt halt schon sehr... unelegant - id zur Aussteuerung eines Rolle? Eine 'Rolle' als String?. Aber für den Anfang reicht es erstmal. Von 'professionell' ist es noch weit entfernt