如果语言环境没有属性文件,如何获取messageSource的消息?

时间:2017-11-02 19:15:38

标签: java spring spring-boot internationalization

我只定义了法语和美国英语文件(messages_en_US.propertiesmessages_fr.properties)。我还创建了一个bean语言环境解析器来将默认值设置为en-US:

@Configuration
public class LocalizationConfig
{    
    @Bean
    public LocaleResolver getLocaleResolver()
    {
        SessionLocaleResolver resolver = new SessionLocaleResolver();

        //Default to the US
        resolver.setDefaultLocale( Locale.US );

        return resolver;
    }
}

但是当我调用下面的方法时,它会抛出一个" NoSuchMessageException":

messageSource.getMessage(
    "test.message",
    new Object[] {},
    Locale.GERMAN

);

如果区域设置要求不存在,如何使用默认值?

1 个答案:

答案 0 :(得分:0)

您可以将messages_en_US.properties重命名为messages.properties。它将成为除了“fr”之外的任何语言环境的默认消息包。