Class MessageSourceAccessor

java.lang.Object
org.springframework.context.support.MessageSourceAccessor

public class MessageSourceAccessor extends Object
Helper class for easy access to messages from a MessageSource, providing various overloaded getMessage methods.

Available from ApplicationObjectSupport, but also reusable as a standalone helper to delegate to in application objects.

Since:
23.10.2003
Author:
Juergen Hoeller
See Also:
  • Constructor Details

    • MessageSourceAccessor

      public MessageSourceAccessor(MessageSource messageSource)
      Create a new MessageSourceAccessor, using LocaleContextHolder's locale as default locale.
      Parameters:
      messageSource - the MessageSource to wrap
      See Also:
    • MessageSourceAccessor

      public MessageSourceAccessor(MessageSource messageSource, Locale defaultLocale)
      Create a new MessageSourceAccessor, using the given default locale.
      Parameters:
      messageSource - the MessageSource to wrap
      defaultLocale - the default locale to use for message access
  • Method Details

    • getDefaultLocale

      protected Locale getDefaultLocale()
      Return the default locale to use if no explicit locale has been given.

      The default implementation returns the default locale passed into the corresponding constructor, or LocaleContextHolder's locale as fallback. Can be overridden in subclasses.

      See Also:
    • getMessage

      public String getMessage(String code, String defaultMessage)
      Retrieve the message for the given code and the default Locale.
      Parameters:
      code - the code of the message
      defaultMessage - the String to return if the lookup fails
      Returns:
      the message
    • getMessage

      public String getMessage(String code, String defaultMessage, Locale locale)
      Retrieve the message for the given code and the given Locale.
      Parameters:
      code - the code of the message
      defaultMessage - the String to return if the lookup fails
      locale - the Locale in which to do lookup
      Returns:
      the message
    • getMessage

      public String getMessage(String code, @Nullable Object[] args, String defaultMessage)
      Retrieve the message for the given code and the default Locale.
      Parameters:
      code - the code of the message
      args - arguments for the message, or null if none
      defaultMessage - the String to return if the lookup fails
      Returns:
      the message
    • getMessage

      public String getMessage(String code, @Nullable Object[] args, String defaultMessage, Locale locale)
      Retrieve the message for the given code and the given Locale.
      Parameters:
      code - the code of the message
      args - arguments for the message, or null if none
      defaultMessage - the String to return if the lookup fails
      locale - the Locale in which to do lookup
      Returns:
      the message
    • getMessage

      public String getMessage(String code) throws NoSuchMessageException
      Retrieve the message for the given code and the default Locale.
      Parameters:
      code - the code of the message
      Returns:
      the message
      Throws:
      NoSuchMessageException - if not found
    • getMessage

      public String getMessage(String code, Locale locale) throws NoSuchMessageException
      Retrieve the message for the given code and the given Locale.
      Parameters:
      code - the code of the message
      locale - the Locale in which to do lookup
      Returns:
      the message
      Throws:
      NoSuchMessageException - if not found
    • getMessage

      public String getMessage(String code, @Nullable Object[] args) throws NoSuchMessageException
      Retrieve the message for the given code and the default Locale.
      Parameters:
      code - the code of the message
      args - arguments for the message, or null if none
      Returns:
      the message
      Throws:
      NoSuchMessageException - if not found
    • getMessage

      public String getMessage(String code, @Nullable Object[] args, Locale locale) throws NoSuchMessageException
      Retrieve the message for the given code and the given Locale.
      Parameters:
      code - the code of the message
      args - arguments for the message, or null if none
      locale - the Locale in which to do lookup
      Returns:
      the message
      Throws:
      NoSuchMessageException - if not found
    • getMessage

      public String getMessage(MessageSourceResolvable resolvable) throws NoSuchMessageException
      Retrieve the given MessageSourceResolvable (e.g. an ObjectError instance) in the default Locale.
      Parameters:
      resolvable - the MessageSourceResolvable
      Returns:
      the message
      Throws:
      NoSuchMessageException - if not found
    • getMessage

      public String getMessage(MessageSourceResolvable resolvable, Locale locale) throws NoSuchMessageException
      Retrieve the given MessageSourceResolvable (e.g. an ObjectError instance) in the given Locale.
      Parameters:
      resolvable - the MessageSourceResolvable
      locale - the Locale in which to do lookup
      Returns:
      the message
      Throws:
      NoSuchMessageException - if not found