Index: lams_common/src/java/org/lamsfoundation/lams/web/filter/LocaleFilter.java =================================================================== diff -u -r1e7487d0fb9d2b078e4f73379b4feac6ea122fb6 -r0e99fe4372b37e742139bb5388c785c06a2a8c90 --- lams_common/src/java/org/lamsfoundation/lams/web/filter/LocaleFilter.java (.../LocaleFilter.java) (revision 1e7487d0fb9d2b078e4f73379b4feac6ea122fb6) +++ lams_common/src/java/org/lamsfoundation/lams/web/filter/LocaleFilter.java (.../LocaleFilter.java) (revision 0e99fe4372b37e742139bb5388c785c06a2a8c90) @@ -53,7 +53,7 @@ // private static final String DEFAULT_LANGUAGE = "en"; // private static final String DEFUALT_COUNTRY = "AU"; - private static final String PREFERRED_LOCALE_KEY = "org.apache.struts.action.LOCALE"; + public static final String PREFERRED_LOCALE_KEY = "org.apache.struts.action.LOCALE"; /** * Set the encoding to use for requests. This encoding will be * passed into a ServletRequest.setCharacterEncoding call. Index: lams_common/src/java/org/lamsfoundation/lams/web/util/HttpSessionManager.java =================================================================== diff -u -r34b959260a0f8f8285793a4481a95ca3580eabc5 -r0e99fe4372b37e742139bb5388c785c06a2a8c90 --- lams_common/src/java/org/lamsfoundation/lams/web/util/HttpSessionManager.java (.../HttpSessionManager.java) (revision 34b959260a0f8f8285793a4481a95ca3580eabc5) +++ lams_common/src/java/org/lamsfoundation/lams/web/util/HttpSessionManager.java (.../HttpSessionManager.java) (revision 0e99fe4372b37e742139bb5388c785c06a2a8c90) @@ -25,17 +25,20 @@ import java.util.Collections; import java.util.HashMap; +import java.util.Locale; import java.util.Map; import java.util.Enumeration; import javax.servlet.ServletContext; import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSessionEvent; +import javax.servlet.jsp.jstl.core.Config; import org.apache.log4j.Logger; import org.lamsfoundation.lams.util.Configuration; import org.lamsfoundation.lams.util.ConfigurationKeys; +import org.lamsfoundation.lams.web.filter.LocaleFilter; /** @@ -153,6 +156,16 @@ HttpSession session= se.getSession(); session.setMaxInactiveInterval(timeout); context = session.getServletContext(); + + //set server default locale for STURTS and JSTL. This value should be overwrite + //LocaleFilter class. But this part code can cope with login.jsp Locale. + if (session != null) { + Locale preferredLocale = new Locale(Configuration.get(ConfigurationKeys.SERVER_LANGUAGE)); + if (preferredLocale != null) { + session.setAttribute(LocaleFilter.PREFERRED_LOCALE_KEY, preferredLocale); + Config.set(session, Config.FMT_LOCALE, preferredLocale); + } + } } }