【问题标题】:Struts2 prepare interceptor - How to skip certain methodsStruts2 准备拦截器 - 如何跳过某些方法
【发布时间】:2017-03-14 15:16:47
【问题描述】:

我已经准备好使用中的拦截器。在一个动作类中,我有一个名为testSomething() 的动作方法,还有一个名为prepareTestSomething() 的动作方法。

我在这里面临的问题是,prepare 拦截器会调用prepareTestSomething() 操作方法,就好像它是testSomething() 的准备方法一样,在这种情况下它不是。

有没有办法让准备拦截器跳过对某些操作方法的调用?与验证拦截器一样,我们可以使用“excludeMethods”参数。

【问题讨论】:

    标签: java configuration struts2 struts2-interceptors


    【解决方案1】:

    Xxx 方法前添加prepare 词是Struts2 约定,它告诉框架它是prepare() 方法用于Xxx 操作方法。来自the docs

    如果动作类有prepare{MethodName}(),就会被调用

    为了使这个巫术起作用,而不是做其他巫术(比如排除方法),只需更改方法名称,这是唯一正确的方法。

    叫它initTestSomething()initializeTestSomething()preparzTestSomething()...随便;但是,请不要使用 convention 试图使其适用于其他事物。只是……错了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-02
      • 2014-03-31
      • 1970-01-01
      • 1970-01-01
      • 2011-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多