Tôi đang cố gắng chuyển hướng đến trang mà người dùng đã cố đăng nhập.Cách nhận URL yêu cầu?
Ý tôi là, somepage → đăng nhập → somepage
Tôi biết điều này;
Trong LoginAction
HttpServletRequest request = ServletActionContext.getRequest();
String url = request.getServletPath();
setUrl(url);
Trong struts.xml
<action name="LoginPro" method="login" class="LoginAction">
<result type="redirect">${url}</result>
<result name="input" type="tiles">login.error</result>
</action>
Nhưng nó không làm việc. Url được yêu cầu luôn là "LoginPro" đang xử lý quá trình đăng nhập. Khi người dùng nhấp vào nút đăng nhập, trang sẽ chuyển đến LoginPro. Vì vậy, url yêu cầu luôn là loginPro ...
Dường như theo cách này; somepage → đăng nhập → loginPro → LoginAction (yêu cầu url là loginPro ..) → loginPro
Làm cách nào để chuyển hướng người dùng đến trang mà họ đã cố đăng nhập?
Bạn có nên chọn một thông số đầu vào hoặc tham số URL ẩn trên mỗi trang được chuyển đến hành động đăng nhập không? Giá trị của nó có thể là trang hiện tại và sau đó bạn có thể đặt chuyển hướng của bạn '$ {url}' từ nó. – Pat
Tôi đã thử tùy chọn của bạn .. Tôi thêm <% = request.getServletPath()%> vào JSP đăng nhập, và giá trị của nó là như thế này ... /MyContextPath/tiles/MyTilesLayout.jsp ... Tôi không biết nhưng nó bằng cách nào đó liên quan đến gạch những thứ. – Deckard