Spring ReloadableResourceBundleMessageSource:看到UnknownFormatConversionException

时间:2013-10-17 18:27:14

标签: java spring internationalization

我通过Spring配置了ReloadableResourceBundleMessageSource。一切都很好。我试图在资源包中添加更多字符串,但是,我看到UnknownFormatConversionException。

我希望输出为:
Following filesystems are below threshold level (25%):/db

我的资源包有 filesystemsBelowThreshold=Following filesystems are below threshold level {0}%:{1}

然而,上面的格式不起作用,它抱怨与 UnknownFormatConversionException: Conversion = ')'.
如果我取下圆形支架,它就会抱怨 UnknownFormatConversionException: Conversion = ':'.
我尝试用另一个%转义%,作为
filesystemsBelowThreshold=Following filesystems are below threshold level {0}%%:{1}但是,我得到了UnknownFormatConversionException: Conversion = ':'.
不知道如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

这是代码

<bean id="messageSource"
        class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
        <property name="basename" value="classpath:messages" />
        <property name="defaultEncoding" value="UTF-8" />
    </bean>

属性文件

filesystemsBelowThreshold=Following filesystems are below threshold level {0}%:{1}

和测试

        Object[] obj = {25, "/db"};
        String str= message.getMessage("filesystemsBelowThreshold", obj, null);
        System.out.println(str);

输出

以下文件系统低于阈值级别25%:/ db