我准备好使用拦截器。在一个动作类中,我有一个名为testSomething()
的动作方法,我还有一个名为prepareTestSomething()
的动作方法。
我面临的问题是,准备拦截器会调用prepareTestSomething()
操作方法,就像它是testSomething()
的准备方法一样,在这种情况下它不是。{/ p>
有没有办法让prepare拦截器跳过某些动作方法的调用?与验证拦截器一样,我们可以使用" excludeMethods "参数。
答案 0 :(得分:0)
将prepare
字加到Xxx
方法是Struts2 约定,告诉框架它是prepare()
Xxx
方法动作方法。来自the docs:
如果操作类有
prepare{MethodName}()
,则会调用它
为了使这个伏都教工作,而不是做其他voodo(如排除方法),只需更改方法名称,这是唯一正确的方法。
称之为initTestSomething()
,initializeTestSomething()
,preparzTestSomething()
......无论如何;但请不要使用惯例试图让它适用于其他事情。这只是......错了。