в моем перехватчика, если пользователь не имеет достаточно права, было бы сообщение предупреждают:Struts 2 как отображать сообщения, сохраненные в перехватчике, которые перенаправляют на другое действие?
public String intercept(ActionInvocation invocation) throws Exception {
ActionContext actionContext = invocation.getInvocationContext();
Map<String, Object> sessionMap = actionContext.getSession();
User loginUser = (User) sessionMap.get("user");
Object action = invocation.getAction();
if (loginUser != null && loginUser.getRole().getId() != Constant.AUTHORITY_ADMIN) {
((ValidationAware) action).addFieldError("user.authority",
((DefaultAction) action).getText("user.action.authority.not.enough"));
return DefaultAction.HOME_PAGE;
}
return invocation.invoke();
}
тогда, было бы перенаправить на «HOME_PAGE» действие, если успех, отображение информации в СПЯ. Итак, как отобразить предупреждение?
я использовал два перехватчики configed в strust.xml, для администратора правой: требование
<interceptor-stack name="authorityStack">
<interceptor-ref name="authority" />
<interceptor-ref name="defaultStack" />
<interceptor-ref name="store">
<param name="operationMode">STORE</param>
</interceptor-ref>
</interceptor-stack>
умолчанию:
<interceptor-stack name="default">
<interceptor-ref name="login" />
<interceptor-ref name="defaultStack" />
<interceptor-ref name="store">
<param name="operationMode">AUTOMATIC</param>
</interceptor-ref>
</interceptor-stack>
Вы просто ищете механизм для отображения сообщения пользователю, если они пытаются вызвать действие, к которому у них нет доступа? –
Да, я хочу сказать пользователю, что он не имеет права доступа. – mui13