public class

DelegatingMessageSource

extends MessageSourceSupport
implements HierarchicalMessageSource
java.lang.Object
   ↳ org.springframework.context.support.MessageSourceSupport
     ↳ org.springframework.context.support.DelegatingMessageSource

Class Overview

Empty MessageSource that delegates all calls to the parent MessageSource. If no parent is available, it simply won't resolve any message.

Used as placeholder by AbstractApplicationContext, if the context doesn't define its own MessageSource. Not intended for direct use in applications.

Summary

[Expand]
Inherited Fields
From class org.springframework.context.support.MessageSourceSupport
Public Constructors
DelegatingMessageSource()
Public Methods
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.
String getMessage(String code, Object[] args, String defaultMessage, Locale locale)
Try to resolve the message.
MessageSource getParentMessageSource()
Return the parent of this MessageSource, or null if none.
void setParentMessageSource(MessageSource parent)
Set the parent that will be used to try to resolve messages that this object can't resolve.
[Expand]
Inherited Methods
From class org.springframework.context.support.MessageSourceSupport
From class java.lang.Object
From interface org.springframework.context.HierarchicalMessageSource
From interface org.springframework.context.MessageSource

Public Constructors

public DelegatingMessageSource ()

Public Methods

public String getMessage (String code, Object[] args, Locale locale)

Try to resolve the message. Treat as an error if the message can't be found.

Parameters
code the 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 the Locale in which to do the lookup
Returns
  • the resolved message

public String getMessage (MessageSourceResolvable resolvable, Locale locale)

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 the Locale in which to do the lookup
Returns
  • the resolved message

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 the 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.
defaultMessage String 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

public MessageSource getParentMessageSource ()

Return the parent of this MessageSource, or null if none.

public void setParentMessageSource (MessageSource parent)

Set the parent that will be used to try to resolve messages that this object can't resolve.

Parameters
parent the parent MessageSource that will be used to resolve messages that this object can't resolve. May be null, in which case no further resolution is possible.