Interface MessageSource
- All Known Subinterfaces:
- ApplicationContext,- ConfigurableApplicationContext,- HierarchicalMessageSource
- All Known Implementing Classes:
- AbstractApplicationContext,- AbstractMessageSource,- AbstractRefreshableApplicationContext,- AbstractRefreshableConfigApplicationContext,- AbstractResourceBasedMessageSource,- AbstractXmlApplicationContext,- AnnotationConfigApplicationContext,- ClassPathXmlApplicationContext,- DelegatingMessageSource,- FileSystemXmlApplicationContext,- GenericApplicationContext,- GenericGroovyApplicationContext,- GenericXmlApplicationContext,- ReloadableResourceBundleMessageSource,- ResourceBundleMessageSource,- StaticApplicationContext,- StaticMessageSource
public interface MessageSource
Strategy interface for resolving messages, with support for the parameterization
 and internationalization of such messages.
 
Spring provides two out-of-the-box implementations for production:
- ResourceBundleMessageSource: built on top of the standard- ResourceBundle, sharing its limitations.
- ReloadableResourceBundleMessageSource: highly configurable, in particular with respect to reloading message definitions.
- Author:
- Rod Johnson, Juergen Hoeller
- See Also:
- 
Method SummaryModifier and TypeMethodDescriptionTry to resolve the message.getMessage(String code, Object @Nullable [] args, Locale locale) Try to resolve the message.getMessage(MessageSourceResolvable resolvable, Locale locale) Try to resolve the message using all the attributes contained within theMessageSourceResolvableargument that was passed in.
- 
Method Details- 
getMessage@Nullable String getMessage(String code, Object @Nullable [] args, @Nullable String defaultMessage, Locale locale) Try to resolve the message. Return default message if no message was found.- Parameters:
- code- the message code to look up, for example, 'calculator.noRateSet'. MessageSource users are encouraged to base message names on qualified class or package names, avoiding potential conflicts and ensuring maximum clarity.
- args- an 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- nullif none
- defaultMessage- a default message to return if the lookup fails
- locale- the locale in which to do the lookup
- Returns:
- the resolved message if the lookup was successful, otherwise
 the default message passed as a parameter (which may be null)
- See Also:
 
- 
getMessageString getMessage(String code, Object @Nullable [] args, Locale locale) throws NoSuchMessageException Try to resolve the message. Treat as an error if the message can't be found.- Parameters:
- code- the message code to look up, for example, 'calculator.noRateSet'. MessageSource users are encouraged to base message names on qualified class or package names, avoiding potential conflicts and ensuring maximum clarity.
- args- an 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- nullif none
- locale- the locale in which to do the lookup
- Returns:
- the resolved message (never null)
- Throws:
- NoSuchMessageException- if no corresponding message was found
- See Also:
 
- 
getMessageTry to resolve the message using all the attributes contained within theMessageSourceResolvableargument that was passed in.NOTE: We must throw a NoSuchMessageExceptionon this method since at the time of calling this method we aren't able to determine if thedefaultMessageproperty of the resolvable isnullor not.- Parameters:
- resolvable- the value object storing attributes required to resolve a message (may include a default message)
- locale- the locale in which to do the lookup
- Returns:
- the resolved message (never nullsince even aMessageSourceResolvable-provided default message needs to be non-null)
- Throws:
- NoSuchMessageException- if no corresponding message was found (and no default message was provided by the- MessageSourceResolvable)
- See Also:
 
 
-