Package org.springframework.context
Interface MessageSource
- All Known Subinterfaces:
ApplicationContext,ConfigurableApplicationContext,ConfigurableWebApplicationContext,HierarchicalMessageSource,WebApplicationContext
- All Known Implementing Classes:
AbstractApplicationContext,AbstractMessageSource,AbstractRefreshableApplicationContext,AbstractRefreshableConfigApplicationContext,AbstractRefreshableWebApplicationContext,AbstractResourceBasedMessageSource,AbstractXmlApplicationContext,AnnotationConfigApplicationContext,AnnotationConfigWebApplicationContext,ClassPathXmlApplicationContext,DelegatingMessageSource,FileSystemXmlApplicationContext,GenericApplicationContext,GenericGroovyApplicationContext,GenericWebApplicationContext,GenericXmlApplicationContext,GroovyWebApplicationContext,ReloadableResourceBundleMessageSource,ResourceBundleMessageSource,StaticApplicationContext,StaticMessageSource,StaticWebApplicationContext,XmlWebApplicationContext
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 standardResourceBundle, sharing its limitations.ReloadableResourceBundleMessageSource: highly configurable, in particular with respect to reloading message definitions.
- Author:
- Rod Johnson, Juergen Hoeller
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiongetMessage(String code, Object[] args, String defaultMessage, Locale locale) Try to resolve the message.getMessage(String code, Object[] 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, @Nullable Object[] args, @Nullable String defaultMessage, @Nullable 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), ornullif nonedefaultMessage- a default message to return if the lookup failslocale- 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:
-
getMessage
String getMessage(String code, @Nullable Object[] args, @Nullable 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), ornullif nonelocale- the locale in which to do the lookup- Returns:
- the resolved message (never
null) - Throws:
NoSuchMessageException- if no corresponding message was found- See Also:
-
getMessage
String getMessage(MessageSourceResolvable resolvable, @Nullable Locale locale) throws NoSuchMessageException Try 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 theMessageSourceResolvable)- See Also:
-