java - Spring:在语言环境 'en_US' 的代码下找不到消息

标签 java spring

applicationContext-Service.xml

<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
    <property name="basenames">
        <list><value>messages</value></list>
    </property>
</bean>

我在/src/messages_en_US.properties 下有 messages_en_US.properties

registerForm.passwordNotMatch=Password does not match.

这是导致错误的代码行:

binding.addError(new FieldError(REGISTER_FORM, "passwordNotMatch", messageSource.getMessage("registerForm.passwordNotMatch", null, locale)));

错误:在区域设置“en_US”的代码“registerForm.passwordNotMatch”下找不到消息。

可能出了什么问题?

最佳答案

如果你改为:它是否有效:

classpath:messages

?

我的经验是,如果使用ReloadableResourceBundleMessageSource,在jsp中会找不到properties文件。在 basename 之前添加 classpath: 解决了我的问题。

虽然我的项目是由 maven 管理的,但我想你还是可以试一试。

关于java - Spring:在语言环境 'en_US' 的代码下找不到消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8001424/

相关文章:

java - 在 Selenium Webdriver 中如何处理这种包含复选框的多选下拉列表

java - 用 Java 自动化 UI 测试

java - 如何在文本字段处于焦点时展开文本字段,而在焦点失焦时如何折叠文本字段?

springmvc jsr303验证器与spring WebDataBinder验证器在一个 Action 中共存

JavaBeanExecutable HV000254 缺少 Java 枚举的参数元数据

适合 JavaME 语法的编译器推荐?

java - Deeplearning4j org.nd4j.linalg.factory.Nd4jBackend$NoAvailableBackendException

java - 禁用 spring security 不起作用

java - 使用 Mockito 实现 Junits

java - 共享缓存上的@Cacheable 键?