Fork me on GitHub
Edit on GitHub << back to Interceptors

Model Driven Interceptor

Watches for ModelDriven actions and adds the action’s model on to the value stack.

The ModelDrivenInterceptor must come before the both StaticParametersInterceptor and ParametersInterceptor if you want the parameters to be applied to the model.

The ModelDrivenInterceptor will only push the model into the stack when the model is not null, else it will be ignored.

To create a Model Driven action, implement the ModelDriven interface by adding a model property, or at least the accessor.

public Object getModel();

In the implementation of getModel, acquire an instance of a business object and return it.

On the page, you can address any JavaBean properties on the business object as if they were coded directly on the Action class. The framework pushes the Model object onto the ValueStack.

Many developers use Spring to acquire the business object. With the addition of a setModel method, the business logic can be injected automatically.


Extending the Interceptor

There are no known extension points to this interceptor.


<action name="someAction" class="com.examples.SomeAction">
    <interceptor-ref name="modelDriven"/>
    <interceptor-ref name="basicStack"/>
     <result name="success">good_result.ftl</result>