关于i18n标记库在国际化jsp时候的缓存问题。
环境 tomcat 5 + j2ee1.5 (j2se 6.0)
没有使用任何框架,就是servlet+jsp
我在登录界面,做了一个机制用来切换语言:
在session里面设立一个userLocale的属性,
然后使用i18n标记库为每个jsp页面做国际化输出时指定localeRef为userLocale
第一次切换语言时候(zh_CN到en_US)的结果是正确的。
问题在于,如果我在切换回zh_CN却变不回来了。只有重新启动tomcat才可以。后来发现,吧登录界面的jsp稍微改以下(jsp这时候重新编译为servlet),也可以出现正确结果。
尝试了很多办法:
1、为jsp页面增加清除缓存的meta标记和jsp方法,结果不行
2、升级j2se到6.0,因为号称6.0再国际化方面有所改进,就是resourceBundle可以调用clearCache()方法,强行清除cache,结果还是不行。
现在是在找不到太好的办法了,不知道各位大侠有没有好办法,让我的jsp灵活切换语言。谢谢!