Class ActionRedirect

All Implemented Interfaces:
Serializable

public class ActionRedirect extends ActionForward

A subclass of ActionForward which is designed for use in redirecting requests, with support for adding parameters at runtime.
An ForwardConfig (or subclass) can be passed to the constructor to copy its configuration:

 public ActionForward execute(ActionMapping mapping,
                              ActionForm form,
                              HttpServletRequest request,
                              HttpServletResponse response)
         throws Exception {
     ActionRedirect redirect =
             new ActionRedirect(mapping.findForward("doRedirect"));
     redirect.addParameter("param1","value1");
     redirect.addParameter("param2","2");
     redirect.addParameter("param3","3.0");
     return redirect;
 }
 

Version:
$Rev$ $Date$
See Also:
  • Field Details

    • parameterValues

      protected HashMap<String,Object> parameterValues

      Holds the redirect parameters. Each entry is either a String or a String[] depending on whether it has one or more entries.

    • anchorValue

      protected String anchorValue

      Holds the anchor value.

  • Constructor Details

    • ActionRedirect

      public ActionRedirect()

      Construct a new instance with redirect set to true and initialize parameter lists.

    • ActionRedirect

      public ActionRedirect(String path)

      Construct a new instance with the specified path and initialize parameter lists.

      Parameters:
      path - Path for this instance
    • ActionRedirect

      public ActionRedirect(String name, String path, String module)

      Construct a new instance with the specified values and initialize parameter lists.

      Parameters:
      name - Name of this instance
      path - Path for this instance
      module - Module prefix, if any
    • ActionRedirect

      public ActionRedirect(ForwardConfig baseConfig)

      Construct a new instance with a ForwardConfig object to copy name, path, contextRelative, and arbitrary property values from.

      Parameters:
      baseConfig - the ForwardConfig to copy configuration values from
  • Method Details

    • addParameter

      public ActionRedirect addParameter(String fieldName, Object valueObj)

      Adds the object's toString() to the list of parameters if it's not null, or an empty string with the given fieldName if it is.

      Parameters:
      fieldName - the name to use for the parameter
      valueObj - the value for this parameter
      Returns:
      The ActionRedirect instance this method is called on
    • setAnchor

      public ActionRedirect setAnchor(String anchorValue)

      Adds an anchor to the path. Technically, the anchor value is just stored for later and will be added to the path in getPath(). Note that this is a considerably simpler method than the addParmaeter method because aside from encoding the value, there isn't really anything to do. Passing in null is fine because that is the value that will be checked for later to determine whether to append an anchor to the path or not.

      Parameters:
      anchorValue - The anchor to append to the path
      Returns:
      The ActionRefirect instance this method is called on
    • getOriginalPath

      public String getOriginalPath()

      Get the original path without the parameters added at runtime.

      Returns:
      the original path as configured.
    • getPath

      public String getPath()

      Get the path for this object, including any parameters that may have been added at runtime.

      Overrides:
      getPath in class ForwardConfig
      Returns:
      The path for this object.
    • getAnchorString

      public String getAnchorString()

      Forms the string containing the parameters passed onto this object thru calls to addParameter().

      Returns:
      a string which can be appended to the URLs. The return string includes a leading hash mark (#).
    • getParameterString

      public String getParameterString()

      Forms the string containing the parameters passed onto this object thru calls to addParameter().

      Returns:
      a string which can be appended to the URLs. The return string does not include a leading question mark (?).
    • toString

      public String toString()

      Return a string description of this object.

      Overrides:
      toString in class ForwardConfig
      Returns:
      a string containing the original path for this object and the parameters it currently holds