1

我添加了 Struts2 拦截器,如果某些逻辑触发,我想更改调用操作。目前我可以在调用操作后更改重定向 JSP 文件。但是我需要在调用操作之前更改调用操作。有没有办法调用不同的动作?

谢谢你。

4

1 回答 1

2

根据您的评论,您的拦截方法如下所示:

    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应该存在于您的配置文件中。

于 2012-05-18T04:24:23.563 回答