I need to get a visitor's locale in my JSP pages so that I can properly display a drop down menu with a list of languages and have the selected language according to their current locale. Normally I might do something like ${pageContext.request.locale}
.
The problem, I think, is that will only give me the locale according to the user's request headers (what the browser sends). But the user may have changed their language/locale, so I need to use Spring's mechanism which looks at the session too:
RequestContextUtils.getLocale(request).toString();
But then it's not so easy to access that in a JSP page and have JSP code work with it.
Or is there another easier mechanism to display a drop down menu of languages to a user? Does Spring store the current locale in an object easily accessible from JSP?
For us
${pageContext.response.locale}
did the trick. This property follows what has been set up by Spring's locale resolver.