微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Spring多模块i18n,带有扩展messageSource内容的模块

我有一个带Maven的多模块Spring项目.我正在使用Spring 3.2.3和注释配置.

我有以下布局:

parent
    common  (depends on parent)
    webapp  (depends on parent,common,module1,module2)
    module1 (depends on parent)
    module2 (depends on parent)

我需要那个常见的,module1和module2可以指定自己的i18n属性(并且webapp收集这些文件并以某种方式提供它们?!):

common:  src/main/resources/i18n/messages_en.properties
module1: src/main/resources/i18n/messages_en.properties
module2: src/main/resources/i18n/messages_en.properties

我试过用

@Bean
public MessageSource messageSource() {
    ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
    messageSource.setBasename("classpath:/i18n/messages");
    messageSource.setdefaultencoding("UTF-8");
    messageSource.setUseCodeAsDefaultMessage(true);
    return messageSource;
}

但是看起来Spring只会使用其中一个翻译文件,而是应该使用all.

另一种可能性是为每个模块指定一个唯一的属性文件名,但后来我不知道通过messageSource.setBasename(…)设置什么basename.

谢谢你的帮助!

最佳答案
我在模块中有一条消息,在父basename数组中我放了classpath

      arations).MESSAGES_BASENAME}

原文地址:https://www.jb51.cc/spring/432101.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐