Class ActionMessagesTool

  • Direct Known Subclasses:
    ErrorsTool

    @DefaultKey("messages")
    @ValidScope("request")
    public class ActionMessagesTool
    extends MessageResourcesTool

    This tool deals with Struts action messages. A few important aspects about action messages are:

    • Action message strings are looked up in the message resources. Support for internationalized messages is provided.
    • Action messages can have up to five replacement parameters.
    • Actions have an attribute property that describes the category of message. This allows the view designer to place action messages precisely where they are wanted. Several methods of this tool provide a parameter property that allows to select a specific category of messages to operate on. Without the property parameter, methods operate on all action messages.

    See the Struts User's Guide, section Building View Components for more information on this topic.

     Template example(s):
       #if( $messages.exist() )
         #foreach( $e in $messages.all )
           $e <br>
         #end
       #end
    
     Toolbox configuration:
     <tools>
       <toolbox scope="request">
         <tool class="org.apache.velocity.tools.struts.ActionMessagesTool"/>
       </toolbox>
     </tools>
     

    This tool should only be used in the request scope.

    Since:
    VelocityTools 1.1
    Version:
    $Id: ActionMessagesTool.java 601976 2007-12-07 03:50:51Z nbubna $
    Author:
    Gabe Sidler, Nathan Bubna
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean exist()
      Returns true if there are action messages queued, otherwise false.
      boolean exist​(java.lang.String property)
      Returns true if there are action messages queued for the specified category of messages, otherwise false.
      java.util.List get​(java.lang.String property)
      Returns the set of localized action messages as an java.util.List of strings for all actionMsgs queued of the specified category or null if no messages are queued for the specified category.
      java.util.List get​(java.lang.String property, java.lang.String bundle)
      Returns the set of localized action messages as a java.util.List of strings for all action messages queued of the specified category or null if no action messages are queued for the specified category.
      protected ActionMessages getActionMessages()  
      java.util.List getAll()
      Returns the set of localized action messages as an java.util.List of strings for all actionMsgs queued or null if no messages are queued.
      java.util.List getAll​(java.lang.String bundle)
      Returns a List of all queued action messages using the specified message resource bundle.
      java.util.List getGlobal()
      This a convenience method and the equivalent of $messages.get($messages.globalName).
      java.lang.String getGlobalName()
      Returns the default "GLOBAL" category name that can be used for messages that are not associated with a particular property.
      int getSize()
      Returns the number of action messages queued.
      int getSize​(java.lang.String property)
      Returns the number of action messages queued for a particular property.
      • Methods inherited from class java.lang.Object

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

      • actionMsgs

        protected ActionMessages actionMsgs
        A reference to the queued action messages.
    • Constructor Detail

      • ActionMessagesTool

        public ActionMessagesTool()
    • Method Detail

      • getActionMessages

        protected ActionMessages getActionMessages()
      • exist

        public boolean exist()

        Returns true if there are action messages queued, otherwise false.

      • exist

        public boolean exist​(java.lang.String property)

        Returns true if there are action messages queued for the specified category of messages, otherwise false.

        Parameters:
        property - the category of messages to check for
      • getSize

        public int getSize()
        Returns the number of action messages queued.
      • getSize

        public int getSize​(java.lang.String property)
        Returns the number of action messages queued for a particular property.
        Parameters:
        property - the category of messages to check for
      • getGlobal

        public java.util.List getGlobal()

        This a convenience method and the equivalent of $messages.get($messages.globalName).

        Returns the set of localized action messages as an list of strings for all action messages queued of the global category or null if no messages are queued for the specified category. If the message resources don't contain an action message for a particular message key, the key itself is used.

        Returns:
        a list of all messages stored under the "global" property
      • getAll

        public java.util.List getAll()
        Returns the set of localized action messages as an java.util.List of strings for all actionMsgs queued or null if no messages are queued. If the message resources don't contain a message for a particular key, the key itself is used as the message.
      • getAll

        public java.util.List getAll​(java.lang.String bundle)
        Returns a List of all queued action messages using the specified message resource bundle.
        Parameters:
        bundle - the message resource bundle to use
        See Also:
        getAll()
      • get

        public java.util.List get​(java.lang.String property)
        Returns the set of localized action messages as an java.util.List of strings for all actionMsgs queued of the specified category or null if no messages are queued for the specified category. If the message resources don't contain a message for a particular key, the key itself is used as the message.
        Parameters:
        property - the category of actionMsgs to operate on
      • get

        public java.util.List get​(java.lang.String property,
                                  java.lang.String bundle)
        Returns the set of localized action messages as a java.util.List of strings for all action messages queued of the specified category or null if no action messages are queued for the specified category. If the message resources don't contain an action message for a particular action key, the key itself is used as action message.
        Parameters:
        property - the category of actionMsgs to operate on
        bundle - the message resource bundle to use
      • getGlobalName

        public java.lang.String getGlobalName()
        Returns the default "GLOBAL" category name that can be used for messages that are not associated with a particular property.