Class RestWorkflowInterceptor
- All Implemented Interfaces:
- Serializable,- ConditionalInterceptor,- Interceptor
 Copied from the DefaultWorkflowInterceptor, this interceptor adds support
 for error handling of Restful operations.  For example, if an validation error is discovered, a map of errors
 is created and processed to be returned, using the appropriate content handler for rendering the body.
 
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.
 
- inputResultName - Default to "input". Determine the result name to be returned when an action / field error is found.
 <action name="someAction" class="com.examples.SomeAction">
     <interceptor-ref name="params"/>
     <interceptor-ref name="validation"/>
     <interceptor-ref name="workflow"/>
     <result name="success">good_result.ftl</result>
 </action>
 <-- In this case myMethod as well as mySecondMethod of the action class
        will not pass through the workflow process -->
 <action name="someAction" class="com.examples.SomeAction">
     <interceptor-ref name="params"/>
     <interceptor-ref name="validation"/>
     <interceptor-ref name="workflow">
         <param name="excludeMethods">myMethod,mySecondMethod</param>
     </interceptor-ref name="workflow">
     <result name="success">good_result.ftl</result>
 </action>
 <-- In this case, the result named "error" will be used when
        an action / field error is found -->
 <-- The Interceptor will only be applied for myWorkflowMethod method of action
        classes, since this is the only included method while any others are excluded -->
 <action name="someAction" class="com.examples.SomeAction">
     <interceptor-ref name="params"/>
     <interceptor-ref name="validation"/>
     <interceptor-ref name="workflow">
        <param name="inputResultName">error</param>
         <param name="excludeMethods">*</param>
         <param name="includeMethods">myWorkflowMethod</param>
     </interceptor-ref>
     <result name="success">good_result.ftl</result>
 </action>
 - Author:
- Jason Carreira, Rainer Hermanns, Alexandru Popescu, Philip Luppens, tm_jee
- See Also:
- 
Field SummaryFields inherited from class org.apache.struts2.interceptor.MethodFilterInterceptorexcludeMethods, includeMethods
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionprotected StringdoIntercept(ActionInvocation invocation) InterceptActionInvocationand processes the errors using theContentTypeHandlerappropriate for the request.voidvoidsetEditMethodName(String editMethodName) voidsetInputResultName(String inputResultName) Set theinputResultName(result name to be returned when a action / field error is found registered).voidsetNewMethodName(String newMethodName) voidsetPostMethodName(String postMethodName) voidsetPutMethodName(String putMethodName) voidMethods inherited from class org.apache.struts2.interceptor.MethodFilterInterceptorapplyInterceptor, getExcludeMethodsSet, getIncludeMethodsSet, intercept, setExcludeMethods, setIncludeMethodsMethods inherited from class org.apache.struts2.interceptor.AbstractInterceptordestroy, init, setDisabled, shouldIntercept
- 
Constructor Details- 
RestWorkflowInterceptorpublic RestWorkflowInterceptor()
 
- 
- 
Method Details- 
setPostMethodName
- 
setEditMethodName
- 
setNewMethodName
- 
setPutMethodName
- 
setValidationFailureStatusCode
- 
setContentTypeHandlerManager
- 
setInputResultNameSet theinputResultName(result name to be returned when a action / field error is found registered). Default toAction.INPUT- Parameters:
- inputResultName- what result name to use when there was validation error(s).
 
- 
doInterceptInterceptActionInvocationand processes the errors using theContentTypeHandlerappropriate for the request.- Specified by:
- doInterceptin class- MethodFilterInterceptor
- Returns:
- String result name
- Throws:
- Exception
 
 
-