建议:增加多资源文件的支持

joe_qlb 2007-03-22
由于经常将资源文件分不同模块写,所以希望能支持多个资源问题,配置如:
  <context-param>
    <param-name>ecsideMessagesLocation</param-name>
    <param-value>ResourcesA,ResourcesB</param-value>
  </context-param>
fins 2007-03-22
没太明白
假设资源文件 A中

listname=哈哈哈

资源文件B 中

listname=嘿嘿嘿

那你怎么区分什么时候使用哪一个啊??

如果两个文件的内容不一样

那为什么不合成一个文件呢??

joe_qlb 2007-03-23
如果系统中有多个模块,将资源放在一个文件中不是很好管理。
如果出现你说的资源重复,那么可以约定以第一个资源为准。
joe_qlb 2007-03-23
我的修改如下:
......
public class TableResourceBundle implements Messages {
......
    private List<ResourceBundle> customResourceBundleList = new ArrayList();
    private static String SPLIT = ",";
......
    public void init(Context context, Locale locale) {
        this.locale = locale;
        defaultResourceBundle = findResourceBundle(EXTREMETABLE_RESOURCE_BUNDLE, locale);
        String messagesLocations = TableModelUtils.getMessagesLocation(context);

        for(String messagesLocation : messagesLocations.split(SPLIT))
        {
        if (StringUtils.isNotBlank(messagesLocation)) {
        customResourceBundleList.add(findResourceBundle(messagesLocation, locale));
        }
        }
    }
......
    public String getMessage(String code, Object[] args) {
    String result = null;
    for(ResourceBundle customResourceBundle : customResourceBundleList)
    {
    result = findResource(customResourceBundle, code);
    if(result != null)
    {
    break;
    }
       }

        if (result == null) {
            result = findResource(defaultResourceBundle, code);
        }

        if (result != null && args != null) {
            MessageFormat formatter = new MessageFormat("");
            formatter.setLocale(locale);
            formatter.applyPattern(result);
            result = formatter.format(args);
        }

        return result;
    }

......
}
fins 2007-03-23
不好意思啊 我还是没看出这个功能的实际意义来

资源文件中的内容只是一些

"上一页" "下一页" "导出"之类的公共文字信息
这些内容会因为模块的不同而不同?
joe_qlb 2007-03-23
哦,不好意思,我没有说清楚。
主要是列表的表头显示,如:
<ec:column property="name" title="customer.name"/>
对于customer.name是从资源文件中获得的,如果我的系统有多个模块,那么资源文件也有多个,这时候就需要能配置多个资源文件了。
fins 2007-03-23
哦 明白了
你说的确实有道理
我会支持的
谢谢
Global site tag (gtag.js) - Google Analytics