How to configure @SkipValidation by XML configuration in Struts 2

廉价感情. 提交于 2020-01-09 11:29:12

问题


In Struts 2,

I am trying to skip validation on method base on XML configuration. As per my application I can not use annotation. So I cannot use @SkipValidation annotation. Is there any alternative for this?

I have one action class which has five methods create, update, delete, search, and view. I want to validate only two methods create and update.


回答1:


You should configure in the struts.xml package with interceptors

<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>

then use action configuration

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

apply interceptor to each action that has a validation interceptor referenced explicitly on action or implicitly via <default-interceptor-ref on the package.




回答2:


You must configure validation interceptor for your action to exclude methods names that you do not want to be validated.

<action name="..."  class="...">
  <interceptor-ref name="defaultStack">
    <param name="validation.excludeMethods">input,back,cancel,browse,delete,search,view</param>
  </interceptor-ref>
  <result>...</result>
</action>


来源:https://stackoverflow.com/questions/14397240/how-to-configure-skipvalidation-by-xml-configuration-in-struts-2

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!