我添加了 Struts2 拦截器,如果某些逻辑触发,我想更改调用操作。目前我可以在调用操作后更改重定向 JSP 文件。但是我需要在调用操作之前更改调用操作。有没有办法调用不同的动作?
谢谢你。
我添加了 Struts2 拦截器,如果某些逻辑触发,我想更改调用操作。目前我可以在调用操作后更改重定向 JSP 文件。但是我需要在调用操作之前更改调用操作。有没有办法调用不同的动作?
谢谢你。
根据您的评论,您的拦截方法如下所示:
public String intercept(ActionInvocation actionInvocation) throws Exception {
final ActionContext actionContext = ActionContext.getContext();
final HttpServletRequest httpServletRequest = (HttpServletRequest) actionContext.get(HTTP_REQUEST);
HttpSession httpSession = httpServletRequest.getSession(false);
UserObject userObject = session.getAttribute("User"); //Check for user information, this is just a dummy
if(isSpecificUser(userObject)){
return "SpecificAction";
}
return actionInvocation.invoke();
}
SpecificAction
应该存在于您的配置文件中。