Ich habe eine Java-Anwendung ohne Rahmen. Es besteht aus JSP-Dateien für die Ansicht und Servlets für die Geschäftslogik. Ich muss die Benutzersitzung als das Servlet mit einem firstName-Parameter festlegen. In der JSP-Datei muss ich überprüfen, ob mein firstName-Parameter einen Wert hat oder nicht. Wenn der Parameter firstName gesetzt ist, muss ich etwas HTML in der JSP-Datei anzeigen. Wenn es nicht festgelegt ist, muss ich unterschiedliche HTML in der JSP-Datei anzeigen.Überprüfen des Servlet-Sitzungsattributwerts in der JSP-Datei
Servlet.java:
HttpSession session = request.getSession();
session.setAttribute("firstName", customer.getFristName());
String url = "/index.jsp";
RequestDispatcher dispatcher = getServletContext().getRequestDispatcher(url);
dispatcher.forward(request, response);
header.jsp:
// Between the <p> tags bellow I need to put some HTML with the following rules
// If firstName exist: Hello ${firstName} <a href="logout.jsp">Log out</a>
// Else: <a href="login.jsp">Login</a> or <a href="register.jsp">Register</a>
<p class="credentials" id="cr"></p>
Was wäre der beste Weg, dies zu tun?
Update:
Hier ist ein großes Tutorial ich auf JSTL, jemand, falls gefunden braucht es: http://www.tutorialspoint.com/jsp/jsp_standard_tag_library.htm
Vielen Dank Ibrahim! Diese Lösung ist sauber und einfach. Es hat genau das gemacht, was ich wollte. Ich habe mit Jsp EL gevögelt und es wurde wirklich unordentlich. :) – Marta
Chaotisch? Anscheinend hast du etwas falsch gemacht. Mit JSTL/EL ist es so einfach wie '
einige Inhalte
andere Inhalte
'. Ich bin mir nicht sicher, wie das unordentlicher ist. – BalusC@BalusC Ich habe es wirklich getan! Ich suchte nach einem if-else Konstrukt in EL und konnte es nicht zur Arbeit bringen, also gab ich die Idee auf. Wenn ich dein Beispiel betrachte, würde es auch tun, was ich wollte. Ich werde wahrscheinlich dieses verwenden, anstatt Java-Code in meine JSP einzufügen. Ich habe gelesen, dass es besser ist, EL/JSTL als Java in Ihren JSPs zu verwenden. Danke für Ihre Hilfe! – Marta