Dobry den,
muzete mi prosim poradit, jak mohu programove nastavit Locale pro
<fmt:message>?
V dobe, kdy jsem pouzival Struts jsem pouzival nasledujici filter ktery
fungoval k plne spokojenosti:
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain)
throws IOException, ServletException {
String l = request.getParameter("setLng");
if (l != null) {
Locale locale;
String l2 = request.getParameter("setLng2");
if (l2 != null)
locale = new Locale(l, l2);
else
locale = new Locale(l);
((HttpServletRequest)
request).getSession().setAttribute(org.apache.struts.Globals.LOCALE_KEY,
locale);
}
chain.doFilter(request, response);
}
zkousel jsem neco ekvivalentniho pro JSTL:
HttpSession session = ((HttpServletRequest)
request).getSession();
Config.set(session, Config.FMT_LOCALE, locale);
Config.set(request, Config.FMT_LOCALE, locale);
session.setAttribute("javax.servlet.jsp.jstl.fmt.locale.session", locale);
request.setAttribute("javax.servlet.jsp.jstl.fmt.locale.request", locale);
ale nic z toho nefunguje a locales se berou vzdy podle nastaveni browseru.
Pouzivam Spring MVC + Sitemesh ale myslim, ze by to na to nemelo mit vliv.
Diky za kazdou radu
Petr