开发者

Why I can't use tag of <spring:message?

Using in my jsp like:

<spring:message code="key1"/> , I got error: ** Root cause is: No message found under code 'key1' for locale 'zh_CN'. javax.servlet.jsp.JspTagException: No message found under code 'key1' for locale 'zh_CN'. at org.springframework.web.servlet.tags.MessageTag.doStartTagInternal(MessageTag.java:184) at org.springframewo开发者_如何学Gork.web.servlet.tags.RequestContextAwareTag.doStartTag(RequestContextAwareTag.java:79) at

And the following is my code:

<bean id="messageSource"        class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
        <property name="basename" value="com.bk.message.Message" />
        <property name="defaultEncoding" value="UTF-8" />
        <property name="useCodeAsDefaultMessage" value="false" />
    </bean>

here is my properties:

Message_zh_CN.properties under folder src/com/bk/message  
key1=This


Hey, basename should be a path, not a package name. See the documentation here and some discussion here.

If you want to debug, btw, just inject the bean somewhere in your code.


Hey,it is more useful to put the configuration in applicationContext.xml. And then you can load the properties from classpath,such as

 <bean id="messageSource"
   class="org.springframework.context.support.ResourceBundleMessageSource">
        <property name="basenames">
            <list>
            <value>i18n/views</value>
                   </list>      
            </property>     
    </bean>

Now, you can load many properties which are defined by youself.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜