Смена перехватчика Struts2

Я добавил перехватчик Struts2, Там я хочу изменить вызывающее действие, если какой-то логический триггер. В настоящее время я могу изменить файл перенаправления JSP после вызова действия. Но мне нужно изменить вызывающее действие, прежде чем вызывать действие. Есть ли способ вызвать другое действие?

Благодарю вас.

1 ответ

Решение

Ваш метод перехвата в соответствии с вашими комментариями будет выглядеть примерно так:

    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 должен присутствовать в вашем файле конфигурации.

Другие вопросы по тегам