我最近在使用 spring mvc 时遇到了问题。我在我的项目中使用 i18n 消息。但我发现 jsp 没问题,但在我的自定义 java 代码中确实有效。
我的配置如下:</p>
<bean id="messageSource"
class="org.springframework.context.support.ResourceBundleMessageSource"
abstract="false" scope="singleton" lazy-init="default">
<property name="basename" value="messages/messages" />
</bean>
我的jsp代码(我只是写了这个测试代码,它得到了结果):
<spring:message code="error.user.none.registered" arguments="aaa"/>
我的Java代码:
@Resource
protected MessageSource messageSource;
public Object login(String email, String password, String ip)
throws Exception {
User t = userDao.queryByEmail(email);
if (t == null) { // 账号不存在
return messageSource.getMessage(
Constants.ERROR_USER_NONE_REGISTERED,
new Object[] { email }, Locale.SIMPLIFIED_CHINESE);
}
.....
}
此代码在我的 UserService.java 登录方法中,我想检查电子邮件是否已注册。但也会出错
org.springframework.context.NoSuchMessageException: No message found under code 'error.user.none.registered' for locale 'zh_CN'.