で動作しますので、この質問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ベースの構成での問題を再現することができないのパスをincludeingします。サンプルアプリケーションは[Github](https://github.com/manish-in-java/stackoverflow-questions/tree/master/36816274)で入手できます。 Javaベースの設定では何かが外れているようです。 [その他の例](https://samerabdelkafi.wordpress。'ReloadableResourceBundleMessageSource'を使用しているJava設定を使用して正常に動作します(com/2014/08/03/spring-mvc-full-java-based-config /)。 – manish
興味深い...私はあなたがティメレフを使っている場所を見ていますが、あなたがリンクしている例はそうではありません。しかし、どちらもSpring Bootを使用していません。それが問題のどこにあるのかがわかりました。 – ndrone
Spring Githubレポの問題を提起する価値があるかもしれません。 – manish