Class ServletDispatcherResult

java.lang.Object
org.apache.struts2.result.StrutsResultSupport
org.apache.struts2.result.ServletDispatcherResult
All Implemented Interfaces:
Serializable, Result, StrutsStatics

public class ServletDispatcherResult extends StrutsResultSupport

Includes or forwards to a view (usually a jsp). Behind the scenes Struts will use a RequestDispatcher, where the target servlet/JSP receives the same request/response objects as the original servlet/JSP. Therefore, you can pass data between them using request.setAttribute() - the Struts action is available.

There are three possible ways the result can be executed:

  • If we are in the scope of a JSP (a PageContext is available), PageContext's include method is called.
  • If there is no PageContext and we're not in any sort of include (there is no RequestDispatcher.INCLUDE_SERVLET_PATH in the request attributes), then a call to forward is made.
  • Otherwise, include is called.

This result type takes the following parameters:

  • location (default) - the location to go to after execution (ex. jsp).
  • parse - true by default. If set to false, the location param will not be parsed for Ognl expressions.

Example:


 <result name="success" type="dispatcher">
   <param name="location">foo.jsp</param>
 </result>
 

This result follows the same rules from StrutsResultSupport.

See Also:
  • Constructor Details

    • ServletDispatcherResult

      public ServletDispatcherResult()
    • ServletDispatcherResult

      public ServletDispatcherResult(String location)
  • Method Details

    • setQueryStringParser

      public void setQueryStringParser(QueryStringParser queryStringParser)
    • doExecute

      public void doExecute(String finalLocation, ActionInvocation invocation) throws Exception
      Dispatches to the given location. Does its forward via a RequestDispatcher. If the dispatch fails a 404 error will be sent back in the http response.
      Specified by:
      doExecute in class StrutsResultSupport
      Parameters:
      finalLocation - the location to dispatch to.
      invocation - the execution state of the action
      Throws:
      Exception - if an error occurs. If the dispatch fails the error will go back via the HTTP request.
    • getParameters

      protected HttpParameters getParameters(ActionInvocation invocation)