Я записываю в файл struts.xml этот стек перехватчиков
<interceptor-stack name="project-interceptors-stack">
<interceptor-ref name="my1-i" />
<interceptor-ref name="my2-i" />
<interceptor-ref name="paramsPrepareParamsStack" />
<interceptor-ref name="logger" />
<interceptor-ref name="timer" />
</interceptor-stack>
, где my1-i и my2-i - мой пользовательский перехватчик.Я не использую этот перехватчик
<interceptor-ref name="i18n"/>
<interceptor-ref name="prepare"/>
<interceptor-ref name="modelDriven"/>
<interceptor-ref name="validation">
, но мои действия, которые являются Preparable, ModelDriven и Validateable, работают хорошо ... почему?
Последующие действия: Я пропустил важную деталь: стек перехватчиков определен в первом пакете и унаследован всеми подпакетами.
Точнее, я хотел спросить: почему, если мое действие реализует Preparable ,и у меня нет перехватчика '<interceptor-ref name="prepare"/>
' в моем пользовательском стеке, метод prepare вызывается правильно?