Home » xwork-2.1.5 » com.opensymphony » xwork2 » interceptor » [javadoc | source]
public class: ChainingInterceptor [javadoc | source]

All Implemented Interfaces:

An interceptor that copies all the properties of every object in the value stack to the currently executing object, except for any object that implements Unchainable . A collection of optional includes and excludes may be provided to control how and which parameters are copied. Only includes or excludes may be specified. Specifying both results in undefined behavior. See the javadocs for ReflectionProvider#copy(Object, Object, java.util.Map, java.util.Collection, java.util.Collection) for more information.

Note: It is important to remember that this interceptor does nothing if there are no objects already on the stack.
This means two things:
One, you can safely apply it to all your actions without any worry of adverse affects.
Two, it is up to you to ensure an object exists in the stack prior to invoking this action. The most typical way this is done is through the use of the chain result type, which combines with this interceptor to make up the action chaining feature.

Interceptor parameters:

Extending the interceptor:

There are no known extension points to this interceptor.

Example code:

<action name="someAction" class="com.examples.SomeAction">
    <interceptor-ref name="basicStack"/>
    <result name="success" type="chain">otherAction</result>

<action name="otherAction" class="com.examples.OtherAction">
    <interceptor-ref name="chain"/>
    <interceptor-ref name="basicStack"/>
    <result name="success">good_result.ftl</result>

Field Summary
protected  Collection<String> excludes     
protected  Collection<String> includes     
protected  ReflectionProvider reflectionProvider     
Method from com.opensymphony.xwork2.interceptor.ChainingInterceptor Summary:
getExcludes,   getIncludes,   intercept,   setExcludes,   setIncludes,   setReflectionProvider
Methods from com.opensymphony.xwork2.interceptor.AbstractInterceptor:
destroy,   init,   intercept
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from com.opensymphony.xwork2.interceptor.ChainingInterceptor Detail:
 public Collection<String> getExcludes() 
    Gets list of parameter names to exclude
 public Collection<String> getIncludes() 
    Gets list of parameter names to include
 public String intercept(ActionInvocation invocation) throws Exception 
 public  void setExcludes(Collection<String> excludes) 
    Sets the list of parameter names to exclude from copying (all others will be included).
 public  void setIncludes(Collection<String> includes) 
    Sets the list of parameter names to include when copying (all others will be excluded).
 public  void setReflectionProvider(ReflectionProvider prov)