Class StrutsUtils

java.lang.Object
org.apache.velocity.tools.struts.StrutsUtils

public class StrutsUtils extends Object

A utility class to expose the Struts shared resources. All methods are static.

This class is provided for use by Velocity view tools that need access to Struts resources. By having all Struts- specific code in this utility class, maintenance is simplified and reuse fostered.

It is the aim, that sooner or later the functionality in this class is integrated into Struts itself. See Bug #16814 for more on that.

Version:
$Id: StrutsUtils.java 670093 2008-06-20 23:10:11Z nbubna $
Author:
Marino A. Jonsson, Nathan Bubna, Gabe Sidler based on code by Ted Husted
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final StrutsUtils
     
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    private
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static String
    errorMarkup(String property, HttpServletRequest request, HttpSession session, ServletContext application)
    Returns a formatted error message.
    static String
    errorMarkup(String property, String bundle, HttpServletRequest request, HttpSession session, ServletContext application)
    Returns a formatted error message.
    static ActionForm
    getActionForm(HttpServletRequest request, HttpSession session)
    Returns the ActionForm bean associated with this request of null if none exists.
    static String
    getActionFormName(HttpServletRequest request, HttpSession session)
    Returns the ActionForm name associated with this request of null if none exists.
    static String
    Return the form action converted into an action mapping path.
    static String
    getActionMappingURL(ServletContext application, HttpServletRequest request, String action)
    Returns the form action converted into a server-relative URI reference.
    static ActionMessages
    getErrors(HttpServletRequest request)
    Returns the Struts errors for this request or null if none exist.
    static String
    getForwardURL(HttpServletRequest request, ServletContext app, String forward)
    Returns the action forward name converted into a server-relative URI reference.
     
    static Locale
    getLocale(HttpServletRequest request, HttpSession session)
    Returns the java.util.Locale for the user.
    static MessageResources
    getMessageResources(HttpServletRequest request, ServletContext app)
    Returns the message resources for this application or null if not found.
    static MessageResources
    getMessageResources(HttpServletRequest request, ServletContext app, String bundle)
    Returns the message resources with the specified bundle name for this application or null if not found.
    static ActionMessages
    getMessages(HttpServletRequest request)
    Returns the Struts messages for this request or null if none exist.
    static String
    getToken(HttpSession session)
    Returns the transaction token stored in this session or null if not used.
    static ModuleConfig
    selectModule(String urlPath, ServletContext app)
    Select the module to which the specified request belongs, and add return the corresponding ModuleConfig.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • StrutsUtils

      private StrutsUtils()
  • Method Details

    • getInstance

      public StrutsUtils getInstance()
    • getMessageResources

      public static MessageResources getMessageResources(HttpServletRequest request, ServletContext app)
      Returns the message resources for this application or null if not found.
      Parameters:
      app - the servlet context
      Since:
      VelocityTools 1.1
    • getMessageResources

      public static MessageResources getMessageResources(HttpServletRequest request, ServletContext app, String bundle)
      Returns the message resources with the specified bundle name for this application or null if not found.
      Parameters:
      app - the servlet context
      bundle - The bundle name to look for. If this is null, the default bundle name is used.
      Since:
      VelocityTools 1.1
    • selectModule

      public static ModuleConfig selectModule(String urlPath, ServletContext app)
      Select the module to which the specified request belongs, and add return the corresponding ModuleConfig.
      Parameters:
      urlPath - The requested URL
      app - The ServletContext for this web application
      Returns:
      The ModuleConfig for the given URL path
      Since:
      VelocityTools 1.1
    • getLocale

      public static Locale getLocale(HttpServletRequest request, HttpSession session)
      Returns the java.util.Locale for the user. If a locale object is not found in the user's session, the system default locale is returned.
      Parameters:
      request - the servlet request
      session - the HTTP session
    • getToken

      public static String getToken(HttpSession session)
      Returns the transaction token stored in this session or null if not used.
      Parameters:
      session - the HTTP session
    • getErrors

      public static ActionMessages getErrors(HttpServletRequest request)
      Returns the Struts errors for this request or null if none exist. Since VelocityTools 1.2, this will also check the session (if there is one) for errors if there are no errors in the request.
      Parameters:
      request - the servlet request
      Since:
      VelocityTools 1.1
    • getMessages

      public static ActionMessages getMessages(HttpServletRequest request)
      Returns the Struts messages for this request or null if none exist. Since VelocityTools 1.2, this will also check the session (if there is one) for messages if there are no messages in the request.
      Parameters:
      request - the servlet request
      Since:
      VelocityTools 1.1
    • getActionForm

      public static ActionForm getActionForm(HttpServletRequest request, HttpSession session)
      Returns the ActionForm bean associated with this request of null if none exists.
      Parameters:
      request - the servlet request
      session - the HTTP session
    • getActionFormName

      public static String getActionFormName(HttpServletRequest request, HttpSession session)
      Returns the ActionForm name associated with this request of null if none exists.
      Parameters:
      request - the servlet request
      session - the HTTP session
    • getActionMappingName

      public static String getActionMappingName(String action)
      Return the form action converted into an action mapping path. The value of the action property is manipulated as follows in computing the name of the requested mapping:
      • Any filename extension is removed (on the theory that extension mapping is being used to select the controller servlet).
      • If the resulting value does not start with a slash, then a slash is prepended.
    • getActionMappingURL

      public static String getActionMappingURL(ServletContext application, HttpServletRequest request, String action)
      Returns the form action converted into a server-relative URI reference.
      Parameters:
      application - the servlet context
      request - the servlet request
      action - the name of an action as per struts-config.xml
    • getForwardURL

      public static String getForwardURL(HttpServletRequest request, ServletContext app, String forward)
      Returns the action forward name converted into a server-relative URI reference.
      Parameters:
      app - the servlet context
      request - the servlet request
      forward - the name of a forward as per struts-config.xml
    • errorMarkup

      public static String errorMarkup(String property, HttpServletRequest request, HttpSession session, ServletContext application)
      Returns a formatted error message. The error message is assembled from the following three pieces: First, value of message resource "errors.header" is prepended. Then, the list of error messages is rendered. Finally, the value of message resource "errors.footer" is appended.
      Parameters:
      property - the category of errors to markup and return
      request - the servlet request
      session - the HTTP session
      application - the servlet context
      Returns:
      The formatted error message. If no error messages are queued, an empty string is returned.
    • errorMarkup

      public static String errorMarkup(String property, String bundle, HttpServletRequest request, HttpSession session, ServletContext application)
      Returns a formatted error message. The error message is assembled from the following three pieces: First, value of message resource "errors.header" is prepended. Then, the list of error messages is rendered. Finally, the value of message resource "errors.footer" is appended.
      Parameters:
      property - the category of errors to markup and return
      bundle - the message resource bundle to use
      request - the servlet request
      session - the HTTP session
      application - the servlet context
      Returns:
      The formatted error message. If no error messages are queued, an empty string is returned.
      Since:
      VelocityTools 1.1