Sto provando a reindirizzare alla pagina in cui l'utente ha tentato l'accesso.Come ottenere l'URL della richiesta?
Voglio dire, somepage → → login somepage
So che questo;
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>
Ma non funziona. L'URL richiesto è sempre "LoginPro" che sta gestendo il processo di accesso. Quando un utente fa clic sul pulsante di accesso, la pagina passa a LoginPro. Quindi l'url della richiesta è sempre loginPro ...
Sembra che sia così; somepage → login → loginPro → LoginAction (richiesta url è loginPro ..) → loginPro
Come posso reindirizzare gli utenti alla pagina in cui hanno tentato l'accesso?
Potrebbe essere un'opzione per includere un input nascosto o un parametro URL su ogni pagina che viene passata all'azione di accesso? Il suo valore potrebbe essere la pagina corrente e quindi potresti impostare il tuo redirect '$ {url}' da esso. – Pat
Ho provato la tua opzione .. Aggiungo <% = request.getServletPath()%> in login JSP, e il suo valore è come questo ... /MyContextPath/tiles/MyTilesLayout.jsp ... Non so ma è in qualche modo legato alle cose delle piastrelle. – Deckard