Home > Guides > Core Developers Guide > Interceptors > Default Workflow Interceptor

An interceptor that makes sure there are not validation errors before allowing the interceptor chain to continue. This interceptor does not perform any validation.

This interceptor does nothing if the name of the method being invoked is specified in the excludeMethods parameter. excludeMethods accepts a comma-delimited list of method names. For example, requests to foo!input.action and foo!back.action will be skipped by this interceptor if you set the excludeMethods parameter to "input, back".

Note: As this method extends off MethodFilterInterceptor, it is capable of deciding if it is applicable only to selective methods in the action class. This is done by adding param tags for the interceptor element, naming either a list of excluded method names and/or a list of included method names, whereby includeMethods overrides excludedMethods. A single * sign is interpreted as wildcard matching all methods for both parameters. See MethodFilterInterceptor for more info.

This interceptor also supports the following interfaces which can implemented by actions:

  • ValidationAware - implemented by ActionSupport class
  • ValidationWorkflowAware - allows changing result name programmatically
  • ValidationErrorAware - notifies action about errors and also allow change result name

You can also use InputConfig annotation to change result name returned when validation errors occurred.

In DefaultWorkflowInterceptor

applies only when action implements com.opensymphony.xwork2.Validateable

  1. if the action class have validate{MethodName}(), it will be invoked
  2. else if the action class have validateDo{MethodName}(), it will be invoked
  3. no matter if 1] or 2] is performed, if alwaysInvokeValidate property of the interceptor is "true" (which is by default "true"), validate() will be invoked.

Parameters

  • inputResultName - Default to "input". Determine the result name to be returned when an action / field error is found.

Extending the Interceptor

There are no known extension points for this interceptor.

Examples