我有一个使用 spring mvc 的 portlet,当门户是西班牙语时,在控制器中我尝试使用 messageSource.getMessage 它返回拉丁字符作为奇怪的字符。
应用程序上下文中的 MessageSource def:
<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basenames" value="classpath:messages"/>
<property name="defaultEncoding" value="UTF-8"/>
</bean>
控制器中的定义:
@Autowired
public void setMessageSource(MessageSource messageSource) {
this.messageSource = messageSource;
}
当我尝试以下操作时,它会返回奇怪的字符:
messageSource.getMessage("messagekey", null, request.getLocale());
似乎它忽略了 UTF-8 编码。有任何想法吗?