Frage

Zur Zeit Tomcat-Login Unterstützung leitet Benutzer zurück, wo sie waren am Anfang, wenn die Anwendung sie nicht angemeldet herausgefunden wurden.

Für diese spezielle Anwendung muß ich sie zwingen, immer wieder zu index.jsp gehen.

Ich bin mir ziemlich sicher, dass dies eine einfache Konfigurationsoption ist in der web.xml IST, aber ich habe nicht die Antwort in Google.

gefunden
War es hilfreich?

Lösung

Eine bessere Lösung wäre wahrscheinlich ein Servlet-Filter zu verwenden. Sie könnten dann prüfen j_username / j_password und eine erfolgreiche Anmeldung und sie umleiten, wo man wollte, dass sie gehen.

Andere Tipps

Es ist etwas, das Sie nicht in web.xml konfigurieren können, da sie nicht Teil der Norm ist. Für Tomcat (getestet auf Version 6.0.14) können Sie Benutzer zu index.jsp durch Hinzufügen des nächsten Code auf Ihre login.jsp zurückzudrängen. Er leitet jede Anfrage, die einen Parameter mit dem Namen ‚login‘ in der URL nicht auf die /index.jsp?login Seite haben. Da die Umleitung der hat Parameter ‚login‘ Der Benutzer wird die Login-Seite dargestellt werden.

Es ist keine sichere Lösung. Wenn jemand für eine Seite anfordert und fügt die Login-Parameter, wird er umgeleitet. Also:

/ showPerson? Id = 1234 wird Umleitung auf /index.jsp?login

/ showPerson? Id = 1234? Login wird nicht umleiten /index.jsp?login

Der Code, der auf der Oberseite des login.jsp geht:

<%
if (request.getParameter("login") == null) {
    response.sendRedirect(request.getContextPath() + "/index.jsp?login");
    return;
}
%>

Statt mit dem Parameter ‚login‘ Sie wahrscheinlich ein Cookie verwenden könnte. Sie können es sicherer machen durch einen Zufallswert für die Login-Parameter (login = randomvalue) und den Wert in dem Session-Objekt zum Vergleich erzeugt wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top