Save This Page
Home » struts-1.3.9-src » org.apache.struts » tiles » commands » [javadoc | source]
org.apache.struts.tiles.commands
public class: TilesPreProcessor [javadoc | source]
java.lang.Object
   org.apache.struts.tiles.commands.TilesPreProcessor

All Implemented Interfaces:
    org.apache.commons.chain.Command

Command class intended to perform responsibilities of the TilesRequestProcessor in Struts 1.1. Does not actually dispatch requests, but simply prepares the chain context for a later forward as appropriate. Should be added to a chain before something which would handle a conventional ForwardConfig.

This class will never have any effect on the chain unless a TilesDefinitionFactory can be found; however it does not consider the absence of a definition factory to be a fatal error; the command simply returns false and lets the chain continue.

To initialize the TilesDefinitionFactory, use org.apache.struts.chain.commands.legacy.TilesPlugin. This class is a simple extension to org.apache.struts.tiles.TilesPlugin which simply does not interfere with your choice of RequestProcessor implementation.

Method from org.apache.struts.tiles.commands.TilesPreProcessor Summary:
doForward,   doInclude,   execute
Methods from java.lang.Object:
equals,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from org.apache.struts.tiles.commands.TilesPreProcessor Detail:
 protected  void doForward(ServletActionContext context,
    String uri) throws IOException, ServletException 

    Do an include of specified URI using a RequestDispatcher.

 protected  void doInclude(ServletActionContext context,
    String uri) throws IOException, ServletException 

    Do an include of specified URI using a RequestDispatcher.

 public boolean execute(Context context) throws Exception 

    If the current ForwardConfig is using "tiles", perform necessary pre-processing to set up the TilesContext and substitute a new ForwardConfig which is understandable to a RequestDispatcher.

    Note that if the command finds a previously existing ComponentContext in the request, then it infers that it has been called from within another tile, so instead of changing the ForwardConfig in the chain Context, the command uses RequestDispatcher to include the tile, and returns true, indicating that the processing chain is complete.