Package org.apache.struts2.interceptor

# Class ServletConfigInterceptor

java.lang.Object
org.apache.struts2.interceptor.AbstractInterceptor
org.apache.struts2.interceptor.ServletConfigInterceptor

All Implemented Interfaces:
  `Serializable`, `ConditionalInterceptor`, `Interceptor`, `StrutsStatics`

public class ServletConfigInterceptor extends AbstractInterceptor implements StrutsStatics

An interceptor which sets action properties based on the interfaces an action implements. For example, if the action implements `ParametersAware` then the action context's parameter map will be set on it.

This interceptor is designed to set all properties an action needs if it's aware of servlet parameters, the servlet context, the session, etc. Interfaces that it supports are:

- `ServletContextAware`
- `ServletRequestAware`
- `ServletResponseAware`
- `ParametersAware`
- `ServletRequestAware`
- `SessionAware`
- `ApplicationAware`
- `PrincipalAware`

Interceptor parameters:

- None

Extending the interceptor:

There are no known extension points for this interceptor.

Example code:

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

See Also:
  - `ServletContextAware`
  - `ServletContextAware`
  - `ServletRequestAware`
  - `ServletResponseAware`
  - `ParametersAware`
  - `SessionAware`
  - `ApplicationAware`
  - `PrincipalAware`
  - Serialized Form

- ## Field Summary

  ### Fields inherited from interface org.apache.struts2.StrutsStatics

  `ACTION_MAPPING, HTTP_REQUEST, HTTP_RESPONSE, PAGE_CONTEXT, SERVLET_CONTEXT, SERVLET_DISPATCHER, STRUTS_ACTION_TAG_INVOCATION`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ServletConfigInterceptor()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `intercept(ActionInvocation invocation)`
  Sets action properties based on the interfaces an action implements.

  ### Methods inherited from class org.apache.struts2.interceptor.AbstractInterceptor

  `destroy, init, setDisabled, shouldIntercept`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### ServletConfigInterceptor

    public ServletConfigInterceptor()

- ## Method Details

  - ### intercept

    public String intercept(ActionInvocation invocation) throws Exception
    Sets action properties based on the interfaces an action implements. Things like application properties, parameters, session attributes, etc are set based on the implementing interface.
    Specified by:
      `intercept` in interface `Interceptor`
    Specified by:
      `intercept` in class `AbstractInterceptor`
    Parameters:
      `invocation` - an encapsulation of the action execution state.
    Returns:
      the return code, either returned from `ActionInvocation.invoke()`, or from the interceptor itself.
    Throws:
      `Exception` - if an error occurs when setting action properties.