如何从Java代码设置JSTL语言环境?
|
我想设置
<fmt:formatNumber>
和朋友使用的JSTL语言环境。我知道使用<fmt:setLocale>
可以实现,但是我需要动态地做到这一点(取决于从我的数据库中检索到的用户数据),并且更喜欢Java代码-确切地说是一个过滤器类。
我以为将会话属性ѭ2setting设置为所需的Locale
实例可以解决问题,但是它被忽略了:JSTL标记继续使用浏览器区域设置。
我确认没有页面上下文或相同名称的请求属性。
那我在做什么错?还是我真的需要通过JSP做到这一点?
阅读JSTL代码后,我找到了对LocalizationContext
的引用,并认为我需要设置一个。不过,我无法完全弄清楚它如何适合图片或如何设置图片。
没有找到相关结果
已邀请:
5 个回复
补蹲农界维
以编程方式设置–允许通过Config API指定范围。
由上下文初始化参数设置–指定在任何标准作用域中未找到设置时使用的值。
jstl-quick-reference(PDF)
莽缓逢
中使用EL。它不需要是硬编码的值或类似的东西。 这是一个例子:
如果将语言作为名称为ѭ10name的请求参数提供,则将对其进行设置。否则,如果先前已经在会话中通过属性名称“ 10”设置了该语言,则请坚持使用该语言。否则,请在请求标头中使用用户提供的语言环境。 如果您在过滤器代码中输入ѭ12,则将使用-如果未设置请求参数。 也可以看看: 如何使Java Web应用程序国际化?
纤洞需匪
使用此设置将设置JSTL将使用的语言环境。请注意属性名称中的.request,如果将此属性设置为其他范围,则必须使用不同的后缀。对于HttpSession,后缀是.session,对于ServletContext,后缀是.application
逆捐凶撤小
(取决于您使用的框架)。只需使用参数ѭ16扩展URL 希望这可以帮助
械怒等