org.springframework.context
Interface MessageSource
- All Known Subinterfaces:
- ApplicationContext, ConfigurableApplicationContext, ConfigurableWebApplicationContext, NestingMessageSource, WebApplicationContext
- public interface MessageSource
Interface to be implemented by objects that can resolve messages.
This enables parameterization and internationalization of messages.
Spring provides two out-of-the-box implementations for production:
- ResourceBundleMessageSource, built on standard java.util.ResourceBundle
- ReloadableResourceBundleMessageSource, being able to reload message
definitions without restarting the VM
- Author:
- Rod Johnson
- See Also: ResourceBundleMessageSource, ReloadableResourceBundleMessageSource
Method Summary |
String | getMessage(String code, Object[] args, String defaultMessage, Locale locale) Try to resolve the message. |
String | getMessage(String code, Object[] args, Locale locale) Try to resolve the message. |
String | getMessage(MessageSourceResolvable resolvable, Locale locale) Try to resolve the message using all the attributes contained within the
MessageSourceResolvable argument that was passed in. |
getMessage
public String getMessage(String code, Object[] args, String defaultMessage, Locale locale)
- Try to resolve the message. Return default message if no message was found.
- Parameters:
- code - code to lookup up, such as 'calculator.noRateSet'. Users of
this class are encouraged to base message names on the relevant fully
qualified class name, thus avoiding conflict and ensuring maximum clarity.
- args - array of arguments that will be filled in for params within
the message (params look like "{0}", "{1,date}", "{2,time}" within a message),
or null if none.
- locale - the Locale in which to do lookup
- defaultMessage - String to return if the lookup fails
- Returns: the resolved message if the lookup is successful;
otherwise the default message passed as a parameter
- See Also:
- java.text.MessageFormat
getMessage
public String getMessage(String code, Object[] args, Locale locale)
throws NoSuchMessageException
- Try to resolve the message. Treat as an error if the message can't be found.
- Parameters:
- code - code to lookup up, such as 'calculator.noRateSet'
- args - Array of arguments that will be filled in for params within
the message (params look like "{0}", "{1,date}", "{2,time}" within a message),
or null if none.
- locale - Locale in which to do lookup
- Returns: the resolved message
- Throws:
- NoSuchMessageException - if not found in any locale
- See Also:
- java.text.MessageFormat
getMessage
public String getMessage(MessageSourceResolvable resolvable, Locale locale)
throws NoSuchMessageException
- Try to resolve the message using all the attributes contained within the
MessageSourceResolvable
argument that was passed in.
NOTE: We must throw a NoSuchMessageException
on this method
since at the time of calling this method we aren't able to determine if the
defaultMessage
property of the resolvable is null or not.
- Parameters:
- resolvable - value object storing attributes required to properly resolve a message
- locale - Locale to be used as the "driver" to figuring out what message to return
- Returns: the resolved message
- Throws:
- NoSuchMessageException - if not found in any locale
- See Also:
- java.text.MessageFormat