In last tutorial, you are able to get the MessageSource via ApplicationContext. But for a bean to get the MessageSource, you have to implement the MessageSourceAware interface.

Example

A CustomerService class, implement the MessageSourceAware interface, has a setter method to set the MessageSource property.

During Spring container initialization, if any class which implements the MessageSourceAware interface, Spring will automatically inject the MessageSource into the class via setMessageSource(MessageSource messageSource) setter method.
package com.mkyong.customer.services;
 
import java.util.Locale;
 
import org.springframework.context.MessageSource;
import org.springframework.context.MessageSourceAware;
 
public class CustomerService implements MessageSourceAware
{
	private MessageSource messageSource;
 
	public void setMessageSource(MessageSource messageSource) {
		this.messageSource = messageSource;
	}
 
	public void printMessage(){
		String name = messageSource.getMessage("customer.name", 
    			new Object[] { 28, "http://www.mkyong.com" }, Locale.US);
 
    	System.out.println("Customer name (English) : " + name);
 
    	String namechinese = messageSource.getMessage("customer.name", 
    			new Object[] { 28, "http://www.mkyong.com" }, 
                        Locale.SIMPLIFIED_CHINESE);
 
    	System.out.println("Customer name (Chinese) : " + namechinese);
	}
 
}

Run it

package com.mkyong.common;
 
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
 
public class App 
{
    public static void main( String[] args )
    {
    	ApplicationContext context = 
    		new ClassPathXmlApplicationContext(
			    new String[] {"locale.xml","Spring-Customer.xml"});
 
    	CustomerService cust = (CustomerService)context.getBean("customerService");
    	cust.printMessage();
    }
}
All the properties files and XML files are reuse from the last ResourceBundleMessageSource tutorial.
Any Java questions or problems? please post at this JavaNullPointer.com forum, see you there ~
[ Read More ] You can find more similar articles at Spring Tutorials