public class

SessionLocaleResolver

extends AbstractLocaleResolver
java.lang.Object
   ↳ org.springframework.web.servlet.i18n.AbstractLocaleResolver
     ↳ org.springframework.web.servlet.i18n.SessionLocaleResolver

Class Overview

Implementation of LocaleResolver that uses a locale attribute in the user's session in case of a custom setting, with a fallback to the specified default locale or the request's accept-header locale.

This is most appropriate if the application needs user sessions anyway, that is, when the HttpSession does not have to be created for the locale.

Custom controllers can override the user's locale by calling setLocale, e.g. responding to a locale change request.

Summary

Fields
public static final String LOCALE_SESSION_ATTRIBUTE_NAME Name of the session attribute that holds the locale.
Public Constructors
SessionLocaleResolver()
Public Methods
Locale resolveLocale(HttpServletRequest request)
void setLocale(HttpServletRequest request, HttpServletResponse response, Locale locale)
Protected Methods
Locale determineDefaultLocale(HttpServletRequest request)
Determine the default locale for the given request, Called if no locale session attribute has been found.
[Expand]
Inherited Methods
From class org.springframework.web.servlet.i18n.AbstractLocaleResolver
From class java.lang.Object
From interface org.springframework.web.servlet.LocaleResolver

Fields

public static final String LOCALE_SESSION_ATTRIBUTE_NAME

Name of the session attribute that holds the locale. Only used internally by this implementation. Use RequestContext(Utils).getLocale() to retrieve the current locale in controllers or views.

Public Constructors

public SessionLocaleResolver ()

Public Methods

public Locale resolveLocale (HttpServletRequest request)

public void setLocale (HttpServletRequest request, HttpServletResponse response, Locale locale)

Protected Methods

protected Locale determineDefaultLocale (HttpServletRequest request)

Determine the default locale for the given request, Called if no locale session attribute has been found.

The default implementation returns the specified default locale, if any, else falls back to the request's accept-header locale.

Parameters
request the request to resolve the locale for
Returns
  • the default locale (never null)