Current File(s): conf/mvc-beans.xml
Format: Native Spring
This is a V3.2 feature.
Spring provides many ways to change locale, this documentation will describe how to change it via an URL query string parameter and how to persist it with a cookie.
Enabling locale change persistance via a cookie is done by defining the CookieLocaleResolver bean and optionally changing it's defaults:
<bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver"> <property name="cookieName" value="lang"/> </bean> |
Here we changed the cookiename to be lang
instead. Now you can set a cookie called lang
to be any locale your IDP supports, e.g. en_GB
. This can be done via Javascript e.g. or use the LocaleChangeInterceptor below.
To change the locale via an URL query string parameter you have to define two beans: a LocaleChangeInterceptor that will inspect request parameters and a LocaleResolver that will remember the locale change, like the CookieLocaleResolver above or SessionLocaleResolver (the present-by-default AcceptHeaderLocaleResolver does not allow locale changes).
<mvc:interceptors> <bean id="localeChangeInterceptor" class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor"> <property name="paramName" value="lang"/> </bean> </mvc:interceptors> <bean id="localeResolver" class="org.springframework.web.servlet.i18n.SessionLocaleResolver"> <property name="defaultLocale" value="en"/> </bean> |
Here we enabled changing the locale based on the URL query string parameter lang
and set a fallback locale of "en".
See documentation for: