org.apache.velocity.tools.struts
Class SecureLinkTool

java.lang.Object
  extended by org.apache.velocity.tools.view.tools.LinkTool
      extended by org.apache.velocity.tools.struts.SecureLinkTool
All Implemented Interfaces:
java.lang.Cloneable

public class SecureLinkTool
extends LinkTool

Tool to be able to use Struts SSL Extensions with Velocity.

It has the same interface as StrutsLinkTool and can function as a substitute if Struts 1.x and SSL Ext are installed.

Usage:

 Template example:
 <!-- Use just like a regular StrutsLinkTool -->
 $link.action.nameOfAction
 $link.action.nameOfForward

 If the action or forward is marked as secure, or not,
 in your struts-config then the link will be rendered
 with https or http accordingly.

 Toolbox configuration:
 <tool>
   <key>link</key>
   <scope>request</scope>
   <class>org.apache.velocity.tools.struts.SecureLinkTool</class>
 </tool>
 

Since:
VelocityTools 1.1
Version:
$Revision: 487322 $ $Date: 2006-12-14 11:49:10 -0800 (Thu, 14 Dec 2006) $
Author:
Marino A. Jonsson

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.velocity.tools.view.tools.LinkTool
LinkTool.QueryPair
 
Field Summary
 
Fields inherited from class org.apache.velocity.tools.view.tools.LinkTool
application, AUTO_IGNORE_PARAMETERS_KEY, HTML_QUERY_DELIMITER, LOG, request, response, SELF_ABSOLUTE_KEY, SELF_INCLUDE_PARAMETERS_KEY, XHTML_QUERY_DELIMITER
 
Constructor Summary
SecureLinkTool()
           
 
Method Summary
 java.lang.String computeURL(javax.servlet.http.HttpServletRequest request, javax.servlet.ServletContext app, java.lang.String link)
          Compute a hyperlink URL based on the specified action link.
 SecureLinkTool setAction(java.lang.String action)
          Returns a copy of the link with the given action name converted into a server-relative URI reference.
 SecureLinkTool setForward(java.lang.String forward)
          Returns a copy of the link with the given global forward name converted into a server-relative URI reference.
 java.lang.String toEncoded(java.lang.String url, java.lang.String sessionId)
          Return the specified URL with the specified session identifier suitably encoded.
 
Methods inherited from class org.apache.velocity.tools.view.tools.LinkTool
absolute, addAllParameters, addIgnore, addQueryData, addQueryData, anchor, configure, copyWith, copyWith, copyWith, copyWithAnchor, copyWithIgnore, duplicate, encodeURL, getAnchor, getBaseRef, getContextPath, getContextURL, getParams, getQueryData, getRequestPath, getSelf, getUri, getURI, init, param, params, relative, setAbsolute, setAnchor, setAutoIgnoreParameters, setRelative, setSelfAbsolute, setSelfIncludeParameters, setURI, setXhtml, toString, uri
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SecureLinkTool

public SecureLinkTool()
Method Detail

setAction

public SecureLinkTool setAction(java.lang.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 SecureLinkTool setForward(java.lang.String forward)

Returns a copy of the link with the given global 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 global forward name as defined in struts-config.xml
Returns:
a new instance of StrutsLinkTool

computeURL

public java.lang.String computeURL(javax.servlet.http.HttpServletRequest request,
                                   javax.servlet.ServletContext app,
                                   java.lang.String link)
Compute a hyperlink URL based on the specified action link. The returned URL will have already been passed to response.encodeURL() for adding a session identifier.

Parameters:
request - the current request.
app - the current ServletContext.
link - the action that is to be converted to a hyperlink URL
Returns:
the computed hyperlink URL

toEncoded

public java.lang.String toEncoded(java.lang.String url,
                                  java.lang.String sessionId)
Return the specified URL with the specified session identifier suitably encoded.

Parameters:
url - URL to be encoded with the session id
sessionId - Session id to be included in the encoded URL
Returns:
the specified URL with the specified session identifier suitably encoded


Copyright © 2002-2009 Apache Software Foundation. All Rights Reserved.