У меня есть перехватчик authen, который проверяет, вошел ли пользователь в систему.
Если нет, то он будет перенаправлен на страницу входа в систему с параметром строки запроса «url», указывающим URL-адрес ссылающейся страницы. Я пытался использовать "actionInvocation.getInvocationContext (). GetParameters ()" для передачи значений в URL перенаправления, но безуспешно.
Кто-нибудь может подсказать, что я сделал не так? Большое спасибо.
Код перехватчика:
public String intercept(ActionInvocation actionInvocation) throws Exception {
Map session = actionInvocation.getInvocationContext().getSession();
Map params = actionInvocation.getInvocationContext().getParameters();
String user = (String) session.get(Constants.KEY_USER);
boolean isAuthenticated = (null!=user);
if (!isAuthenticated) {
params.put("backUrl", "http://www.some_url.com/");
return Action.LOGIN;
}
else {
return actionInvocation.invoke();
}
}
struts.xml parts
<global-results>
<result name="login" type="redirect">/login?url=${backUrl}</result>