我有一個使用spring mvc的門戶網站,當門戶網站使用西班牙語和控制器時,我嘗試使用messageSource.getMessage,它將拉丁字符作爲怪異字符返回。Spring MVC messageSource西班牙文字符
MessageSource的高清應用方面:
<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basenames" value="classpath:messages"/>
<property name="defaultEncoding" value="UTF-8"/>
</bean>
防守控制器:
messageSource.getMessage("messagekey", null, request.getLocale());
這似乎是:
@Autowired
public void setMessageSource(MessageSource messageSource) {
this.messageSource = messageSource;
}
當我嘗試它返回的怪異字符以下它忽略了UTF-8編碼。有任何想法嗎?
我正在使用Spring安全性。如果用戶已登錄(但未完全通過身份驗證,因爲他們的登錄不是最近的)並嘗試訪問我設置爲需要完整身份驗證的帳戶頁面,那麼我的「access-denied-page =」/ login?重新授權= true「'設置將它們彈回到登錄控制器。但登錄視圖顯示?而不是中文字符。除了這個時髦的403情況外,UTF-8在我的網站中都可以使用。我不知道爲什麼我需要在我的LoginController(而不是其他控制器)中指定'response.setCharacterEncoding(「UTF-8」);'但是解決了它。 – Ryan