Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Note
titleStruts 2.0.7 and prior

The validators.xml containing custom validators needs to contain a copy of the default validators. No DTD was used in validators.xml. See: http://struts.apache.org/2.x/docs/release-notes-208.html#ReleaseNotes2.0.8-MigrationfrompreviousReleases

Turning on Validation

Wiki Markup
{snippet:id=turningOnValidators|javadoc=true|url=xwork2/src/java/com/opensymphony/xwork2/validator/ValidatorFactory.java}
Wiki Markup
{snippet:id=exTurnOnValidators|javadoc=true|lang=xml|url=xwork2/src/java/com/opensymphony/xwork2/validator/ValidatorFactory.java}

Note: The default validationWorkflowStack already includes this.

The defaultStack already has validation turned on. When creating your own interceptor-stack be sure to include the validation interceptor. From struts-default.xml:

Code Block
langxml

<interceptor-stack name="defaultStack">
   ...
   <interceptor-ref name="validation">
      <param name="excludeMethods">input,back,cancel,browse</param>
   </interceptor-ref>
   <interceptor-ref name="workflow">
      <param name="excludeMethods">input,back,cancel,browse</param>
   </interceptor-ref>
</interceptor-stack>

Beginning with version 2.0.4 Struts provides an extension to XWork's com.opensymphony.xwork2.validator.ValidationInterceptor interceptor.

Code Block
langxml

<interceptor name="validation" class="org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor"/>

Using this validator you You can turn off validation for a specific method by using the @SkipValidation annotation above @org.apache.struts2.interceptor.validation.SkipValidation annotation on your action method.

Validator Scopes

...