Class 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$
    Author:
    Marino A. Jonsson, Nathan Bubna, Gabe Sidler based on code by Ted Husted
    • Method Summary

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

    • Method Detail

      • getMessageResources

        public static org.apache.struts.util.MessageResources getMessageResources​(javax.servlet.http.HttpServletRequest request,
                                                                                  javax.servlet.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 org.apache.struts.util.MessageResources getMessageResources​(javax.servlet.http.HttpServletRequest request,
                                                                                  javax.servlet.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 org.apache.struts.config.ModuleConfig selectModule​(String urlPath,
                                                                         javax.servlet.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​(javax.servlet.http.HttpServletRequest request,
                                       javax.servlet.http.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​(javax.servlet.http.HttpSession session)
        Returns the transaction token stored in this session or null if not used.
        Parameters:
        session - the HTTP session
      • getErrors

        public static org.apache.struts.action.ActionMessages getErrors​(javax.servlet.http.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 org.apache.struts.action.ActionMessages getMessages​(javax.servlet.http.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 org.apache.struts.action.ActionForm getActionForm​(javax.servlet.http.HttpServletRequest request,
                                                                        javax.servlet.http.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​(javax.servlet.http.HttpServletRequest request,
                                               javax.servlet.http.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​(javax.servlet.ServletContext application,
                                                 javax.servlet.http.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​(javax.servlet.http.HttpServletRequest request,
                                           javax.servlet.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,
                                         javax.servlet.http.HttpServletRequest request,
                                         javax.servlet.http.HttpSession session,
                                         javax.servlet.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,
                                         javax.servlet.http.HttpServletRequest request,
                                         javax.servlet.http.HttpSession session,
                                         javax.servlet.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