无法更改HTTP接受标头 - 使用不同的区域设置解析策略

Vla*_*v K 8 java spring jsp interceptor web

我在Pluralsight上关注Spring mvc课程,在运行我的应用程序时,我有"无法更改HTTP接受标头 - 使用不同的区域设置解析策略"这个错误.在此之前,我将theese beans添加到servlet-config.xml

<mvc:interceptors>
    <bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor" p:paramName="language" />
</mvc:interceptors>         

<bean id="localResolver" class="org.springframework.web.servlet.i18n.SessionLocaleResolver" p:defaultLocale="en" />
Run Code Online (Sandbox Code Playgroud)

在资源文件夹中我有两个文件.messages_es.properties和messages.properties.一个goal.text=Minutos Ejercicio para el día de hoy:人和另一个人goal.text=Minutes Exercise For The Day Today: 所以目标是选择语言.

在jsp文件中我有关于它的这一行

Language : <a href="?language=en">English</a> | <a href="?language=es">Spanish </a>

那么我怎样才能使它正常工作?

Sto*_*orm 24

将bean id从"localResolver"更改为"localeResolver"


Gop*_*lai 5

我通过使用Spring 4 i18n和l10n(无法更改HTTP接受标头)此处提供的解决方案将方法命名为localeResolver来解决了此问题。

@Bean
public LocaleResolver localeResolver()
{
    final SessionLocaleResolver localeResolver = new SessionLocaleResolver();
    localeResolver.setDefaultLocale(new Locale("en", "US"));
    return localeResolver;
}
Run Code Online (Sandbox Code Playgroud)