Class StrutsLinkTool

All Implemented Interfaces:
Cloneable

public class StrutsLinkTool extends LinkTool

The StrutsLinkTool extends the standard LinkTool to add methods for working with Struts' Actions and Forwards:

 Template example(s):
   <a href="$link.action.update">update something</a>
   #set( $base = $link.forward.MyPage.anchor('view') )
   <a href="$base.param('select','this')">view this</a>
   <a href="$base.param('select','that')">view that</a>

 Toolbox configuration:
 <tools>
   <toolbox scope="request">
     <tool class="org.apache.velocity.tools.struts.StrutsLinkTool"/>
   </toolbox>
 </tools>
 

This tool may only be used in the request scope.

Version:
$Id: StrutsLinkTool.java 707788 2008-10-24 23:28:06Z nbubna $
Author:
Gabe Sidler, Nathan Bubna
  • Field Details

    • application

      protected ServletContext application
    • get

      private String get
  • Constructor Details

    • StrutsLinkTool

      public StrutsLinkTool()
  • Method Details

    • configure

      protected void configure(ValueParser props)
      Description copied from class: SafeConfig
      Does the actual configuration. This is protected, so subclasses may share the same ValueParser and call configure at any time, while preventing templates from doing so when configure(Map) is locked.
      Overrides:
      configure in class LinkTool
    • get

      public StrutsLinkTool get(String getme)

      This exists to enable a simplified syntax for using this tool in a template. Now, users can do $link.action.saveFoo instead of $link.setAction('saveFoo') and $link.forward.profile instead of $link.setForward('profile'). Neat, eh? :)

      Since:
      VelocityTools 1.3
    • setAction

      public StrutsLinkTool setAction(String action)

      Returns a copy of the link with the given action name converted into a server-relative URI reference. This method does not check if the specified action really is defined. This method will overwrite any previous URI reference settings but will copy the query string.

      Parameters:
      action - an action path as defined in struts-config.xml
      Returns:
      a new instance of StrutsLinkTool
    • setForward

      public StrutsLinkTool setForward(String forward)

      Returns a copy of the link with the given global or local forward name converted into a server-relative URI reference. If the parameter does not map to an existing global forward name, null is returned. This method will overwrite any previous URI reference settings but will copy the query string.

      Parameters:
      forward - a forward name as defined in struts-config.xml in either global-forwards or in the currently executing action mapping.
      Returns:
      a new instance of StrutsLinkTool