Я работал с перехватчиками Struts2, контейнер создает прокси-сервер Action для соответствующего класса действий после консультации с менеджером конфигурации (struts.xml
). Теперь пришло время выполнить цепочку перехватчиков, у меня простой вопрос — кто именно вызывает метод перехвата в классе Myinterceptor
.
public class MyInterceptor implements Interceptor{
public void destroy() {
// TODO Auto-generated method stub
}
public void init() {
// TODO Auto-generated method stub
}
public String intercept(ActionInvocation ai) throws Exception {
// TODO Auto-generated method stub
long t1=System.currentTimeMillis();
ValueStack s= ai.getStack();
String val=s.findString("name");
s.set("name", val.toUpperCase()+"_changed");
return ai.invoke();
}
}
Насколько я понимаю, он вызывается actionproxy соответствующего класса действий, в тех же строках это делается в Spring AOP, где proxyfactorybean делает то же самое, чтобы вызывать советы для класса (pointcut).
Но у меня нет документации, подтверждающей это. Подскажите пожалуйста прав я или нет.