1

在 Struts 2 中,

我正在尝试跳过基于 XML 配置的方法验证。根据我的应用程序,我不能使用注释。所以我不能使用@SkipValidation注释。有没有其他选择?

我有一个动作类,它有五种方法create、、、、和。我只想验证两种方法和.updatedeletesearchviewcreateupdate

4

2 回答 2

2

您必须validation为您的操作配置拦截器以排除您不想验证的方法名称。

<action name="..."  class="...">
  <interceptor-ref name="defaultStack">
    <param name="validation.excludeMethods">input,back,cancel,browse,delete,search,view</param>
  </interceptor-ref>
  <result>...</result>
</action>
于 2013-01-18T10:52:04.553 回答
2

您应该在 struts.xml 包中配置拦截器

<interceptors>
  <interceptor-stack name="validateWorkflowStack">
    <interceptor-ref name="basicStack"/>
<!-- ... whatever interceptors -->
    <interceptor-ref name="validation">
      <param name="excludeMethods">delete, search, view</param>
    </interceptor-ref>
    <interceptor-ref name="workflow"/>
  </interceptor-stack>
</interceptors>

然后使用动作配置

<action name="create" class="your.package.CreateAction" method="create">
    <result name="input">/path/to/form.jsp</result>
    <interceptor-ref name="validateWorkflowStack"/>
</action>

<default-interceptor-ref将拦截器应用于每个操作,该操作具有在操作上显式引用或通过包 隐式引用的验证拦截器。

于 2013-01-18T13:37:40.857 回答