org.apache.struts2.views.tiles
Class TilesResult

java.lang.Object
  extended by org.apache.struts2.dispatcher.StrutsResultSupport
      extended by org.apache.struts2.dispatcher.ServletDispatcherResult
          extended by org.apache.struts2.views.tiles.TilesResult
All Implemented Interfaces:
com.opensymphony.xwork2.Result, java.io.Serializable, org.apache.struts2.StrutsStatics

public class TilesResult
extends org.apache.struts2.dispatcher.ServletDispatcherResult

Renders a view using struts-tiles. In your web.xml file, you need to add a servlet entry for TilesServlet to load the tiles definitions into the ServletContext. <servlet> <servlet-name>tiles</servlet-name> <servlet-class>org.apache.tiles.servlets.TilesServlet</servlet-class> <init-param> <param-name>definitions-config</param-name> <param-value>/WEB-INF/tiles-config.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> In struts.xml, use type="tiles" on your <result>. <action name="editUser" class="userAction" method="edit"> <result name="success" type="tiles">userForm</result> <result name="input" type="tiles">userList</result> </action> Making this result type the default for the current package. <result-types> <result-type name="tiles" class="org.apache.struts2.views.tiles.TilesResult" default="true" /> </result-types>

See Also:
Serialized Form

Field Summary
protected  com.opensymphony.xwork2.ActionInvocation invocation
           
 
Fields inherited from class org.apache.struts2.dispatcher.StrutsResultSupport
DEFAULT_PARAM
 
Fields inherited from interface org.apache.struts2.StrutsStatics
HTTP_REQUEST, HTTP_RESPONSE, PAGE_CONTEXT, SERVLET_CONTEXT, SERVLET_DISPATCHER, STRUTS_PORTLET_CONTEXT
 
Constructor Summary
TilesResult()
           
TilesResult(java.lang.String location)
           
 
Method Summary
protected  java.util.Locale deduceLocale(javax.servlet.http.HttpServletRequest request)
           
 void doExecute(java.lang.String location, com.opensymphony.xwork2.ActionInvocation invocation)
          Dispatches to the given location.
protected  void executeController(org.apache.tiles.Controller controller, org.apache.tiles.ComponentContext context, org.apache.tiles.TilesContext tilesContext)
          Execute the given Tiles controller.
protected  org.apache.tiles.ComponentContext getComponentContext(org.apache.tiles.ComponentDefinition definition, org.apache.tiles.TilesContext tilesContext)
          Determine the Tiles component context for the given Tiles definition.
protected  org.apache.tiles.ComponentDefinition getComponentDefinition(java.lang.String location, org.apache.tiles.DefinitionsFactory factory, javax.servlet.http.HttpServletRequest request)
          Determine the Tiles component definition for the given Tiles definitions factory.
protected  org.apache.tiles.Controller getController(org.apache.tiles.ComponentDefinition definition, javax.servlet.http.HttpServletRequest request)
          Determine and initialize the Tiles component controller for the given Tiles definition, if any.
protected  java.lang.String getDispatcherPath(org.apache.tiles.ComponentDefinition definition, javax.servlet.http.HttpServletRequest request)
          Determine the dispatcher path for the given Tiles definition, i.e.
 
Methods inherited from class org.apache.struts2.dispatcher.StrutsResultSupport
conditionalParse, execute, getLastFinalLocation, setEncode, setLocation, setParse
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

invocation

protected com.opensymphony.xwork2.ActionInvocation invocation
Constructor Detail

TilesResult

public TilesResult()

TilesResult

public TilesResult(java.lang.String location)
Method Detail

doExecute

public void doExecute(java.lang.String location,
                      com.opensymphony.xwork2.ActionInvocation invocation)
               throws java.lang.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.

Overrides:
doExecute in class org.apache.struts2.dispatcher.ServletDispatcherResult
Parameters:
location - the location to dispatch to.
invocation - the execution state of the action
Throws:
java.lang.Exception - if an error occurs. If the dispatch fails the error will go back via the HTTP request.

deduceLocale

protected java.util.Locale deduceLocale(javax.servlet.http.HttpServletRequest request)

getComponentDefinition

protected org.apache.tiles.ComponentDefinition getComponentDefinition(java.lang.String location,
                                                                      org.apache.tiles.DefinitionsFactory factory,
                                                                      javax.servlet.http.HttpServletRequest request)
                                                               throws java.lang.Exception
Determine the Tiles component definition for the given Tiles definitions factory.

Parameters:
factory - the Tiles definitions factory
request - current HTTP request
Returns:
the component definition
Throws:
java.lang.Exception

getComponentContext

protected org.apache.tiles.ComponentContext getComponentContext(org.apache.tiles.ComponentDefinition definition,
                                                                org.apache.tiles.TilesContext tilesContext)
                                                         throws java.lang.Exception
Determine the Tiles component context for the given Tiles definition.

Parameters:
definition - the Tiles definition to render
tilesContext - current TilesContext
Returns:
the component context
Throws:
java.lang.Exception - if preparations failed

getController

protected org.apache.tiles.Controller getController(org.apache.tiles.ComponentDefinition definition,
                                                    javax.servlet.http.HttpServletRequest request)
                                             throws java.lang.Exception
Determine and initialize the Tiles component controller for the given Tiles definition, if any.

Parameters:
definition - the Tiles definition to render
request - current HTTP request
Returns:
the component controller to execute, or null if none
Throws:
java.lang.Exception - if preparations failed

executeController

protected void executeController(org.apache.tiles.Controller controller,
                                 org.apache.tiles.ComponentContext context,
                                 org.apache.tiles.TilesContext tilesContext)
                          throws java.lang.Exception
Execute the given Tiles controller.

Parameters:
controller - the component controller to execute
context - the component context
tilesContext - current tilesContext
Throws:
java.lang.Exception - if controller execution failed

getDispatcherPath

protected java.lang.String getDispatcherPath(org.apache.tiles.ComponentDefinition definition,
                                             javax.servlet.http.HttpServletRequest request)
                                      throws java.lang.Exception
Determine the dispatcher path for the given Tiles definition, i.e. the request dispatcher path of the layout page.

Parameters:
definition - the Tiles definition to render
request - current HTTP request
Returns:
the path of the layout page to render
Throws:
java.lang.Exception - if preparations failed


Copyright © 2000-2006 Apache Software Foundation. All Rights Reserved.