Ich versuche, auf die Seite umzuleiten, auf der der Benutzer versucht hat, sich anzumelden.Wie bekomme ich die Anfrage-URL?
Ich meine, somepage → Login → somepage
Ich weiß, das;
In Loginaction
HttpServletRequest request = ServletActionContext.getRequest();
String url = request.getServletPath();
setUrl(url);
In struts.xml
<action name="LoginPro" method="login" class="LoginAction">
<result type="redirect">${url}</result>
<result name="input" type="tiles">login.error</result>
</action>
Aber es funktioniert nicht. Die angeforderte URL ist immer "LoginPro", die den Login-Prozess behandelt. Wenn ein Benutzer auf die Login-Schaltfläche klickt, wird die Seite zu LoginPro weitergeleitet. Also die Anfrage-URL ist immer LoginPro ...
Es scheint so zu sein; somepage → anmelden → loginPro → LoginAction (Anfrage-URL ist loginPro ..) → loginPro
Wie kann ich Benutzer auf die Seite umleiten, auf der sie sich anmelden wollten?
Wäre es eine Option für Sie, eine verborgene Eingabe oder einen URL-Parameter auf jeder Seite einzufügen, die an die Login-Aktion übergeben wird? Ihr Wert könnte die aktuelle Seite sein und Sie könnten dann Ihre Weiterleitung '$ {url}' daraus setzen. – Pat
Ich versuchte Ihre Option .. Ich füge <% = request.getServletPath()%> in Login-JSP, und sein Wert ist wie folgt ... /MyContextPath/tiles/MyTilesLayout.jsp ... Ich weiß es nicht, aber Es ist irgendwie mit Kacheln verwandt. – Deckard