Struts2 如何覆盖动作的全局拦截器堆栈
Struts2 how to override the global interceptor stack for an action
<interceptor-stack name="DefaultTEST">
<interceptor-ref name="exception" />
<!-- some more interceptors go in here -->
<interceptor-ref name="debugging" />
</interceptor-stack>
<default-interceptor-ref name="DefaultTEST" />
<action name="welcome">
<result type="tiles">WELCOME_PAGE</result>
</action>
<action name="">
<result ...>...</result>
</action>
... <!-- more actions -->
所以我的问题是如何覆盖默认拦截器堆栈,以便可以加载一些其他拦截器(或拦截器堆栈)的欢迎操作,而默认拦截器不会加载。
如果您在操作配置中明确引用拦截器或拦截器堆栈,则可以覆盖拦截器配置。
<action name="welcome">
<interceptor-ref name="defaultStack" />
<result type="tiles">WELCOME_PAGE</result>
</action>
只有 defaultStack
会执行 welcome
操作。其他不覆盖此包中拦截器配置的操作将使用 DefaultTEST
因为它被配置为默认值。
<interceptor-stack name="DefaultTEST">
<interceptor-ref name="exception" />
<!-- some more interceptors go in here -->
<interceptor-ref name="debugging" />
</interceptor-stack>
<default-interceptor-ref name="DefaultTEST" />
<action name="welcome">
<result type="tiles">WELCOME_PAGE</result>
</action>
<action name="">
<result ...>...</result>
</action>
... <!-- more actions -->
所以我的问题是如何覆盖默认拦截器堆栈,以便可以加载一些其他拦截器(或拦截器堆栈)的欢迎操作,而默认拦截器不会加载。
如果您在操作配置中明确引用拦截器或拦截器堆栈,则可以覆盖拦截器配置。
<action name="welcome">
<interceptor-ref name="defaultStack" />
<result type="tiles">WELCOME_PAGE</result>
</action>
只有 defaultStack
会执行 welcome
操作。其他不覆盖此包中拦截器配置的操作将使用 DefaultTEST
因为它被配置为默认值。