工程,以便幫助回答這個問題Thymeleaf + Spring (not Boot) - how to show messages from messageSource爲什麼Thymeleaf國際只ResourceBundleMessageSource會
我發現,如果你使用ReloadableResourceBundleMessageSource
就不會工作。 Thymeleaf會顯示?? app.name_pt_BR ??而不是預期的結果。
@Bean(name = "messageSource")
public MessageSource messageSource() {
ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
messageSource.setBasename("/i18n/messages");
messageSource.setFallbackToSystemLocale(false);
messageSource.setCacheSeconds(0);
messageSource.setDefaultEncoding("UTF-8");
return messageSource;
}
當我切換到下面它按預期工作。
@Bean(name = "messageSource")
public MessageSource messageSource() {
ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource();
messageSource.setBasename("/i18n/messages");
messageSource.setFallbackToSystemLocale(false);
messageSource.setCacheSeconds(0);
messageSource.setDefaultEncoding("UTF-8");
return messageSource;
}
爲什麼ReloadableResourceBundleMessageSource無法使用?
添加代碼這個問題:GitHub
無法路徑以基於XML配置重現該問題。示例應用程序在[Github]上可用(https://github.com/manish-in-java/stackoverflow-questions/tree/master/36816274)。基於Java的配置似乎沒有什麼用處。還有[其他示例](https://samerabdelkafi.wordpress。com/2014/08/03/spring-mvc-full-java-based-config /)使用'ReloadableResourceBundleMessageSource'成功使用Java配置。 – manish
有趣......我看到你在哪裏使用Thymeleaf,但你鏈接的例子不是。但是兩者都沒有使用Spring Boot。如果這就是問題所在,我就置之不理。 – ndrone
可能值得在Spring Github回購中提出一個問題。 – manish