struts2国际化和语言转换遇到的一些问题和解决方案及了解到的2.0的特性.docVIP

struts2国际化和语言转换遇到的一些问题和解决方案及了解到的2.0的特性.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
struts2国际化和语言转换遇到的一些问题和解决方案及了解到的2.0的特性

struts2国际化和语言转换遇到的一些问题和解决方案及了解到的2.0的特性 struts2国际化和语言转换遇到的一些问题和解决方案及了解到的2.0的特性 . 分类: struts2.02010-03-05 14:201000人阅读评论(0)收藏举报 国际化和语言转换 一些基本代码步骤 我这里就不写了,网上很多 我只说做的时候遇到的一些关键性问题: 1.perties这个资源文件中 struts.custom.i18n.resources=resources.Messages 这条语句的意思是什么? 其实很简单,resources是路径的名字,在项目中的体现是resources包下的perties 文件,这个包下不仅是这个文件,还有你的语言包格式为 名称_语言代码_国家代码 如: Messages_zh_CN.properties和Messages_en_US.properties 关于资源文件转码问题推荐一个Eclipse插件叫Arbitrary url为http://propedit.sourceforge.jp/eclipse/updates/ 语言切换原理:它的原理为在执行Action方法前,i18n拦截器查找请求中的一个名为request_locale的参数。如果其存在,拦截器就将其作为参数实例化Locale对象,并将其设为用户默认的区域(Locale),最后,将此Locale对象保存在session的名为“WW_TRANS_I18N_LOCALE”的属性中 (这里也就是说session中保存的WW_TRANS_I18N_LOCALE这个值决定了这个请求的语言包) 代码演示: public class SwitchLanguageAction extends BaseAction { private String referer; private static Logger logger = Logger.getLogger(SwitchLanguageAction.class); public String execute() throws Exception { String request_locale = request.getParameter(request_locale); if (request_locale.equals(zh_CN)) request.getSession().setAttribute(WW_TRANS_I18N_LOCALE, java.util.Locale.CHINA); if (request_locale.equals(en_US)) request.getSession().setAttribute(WW_TRANS_I18N_LOCALE, java.util.Locale.US); Cookie cookie = new Cookie(LanguageGlobals.USER_SESSION_NAME + _LANG, request_locale); cookie.setMaxAge; cookie.setPath(/); response.addCookie(cookie); logger.debug(request_locale); String ref = request.getHeader(referer); if (null != referer) { setReferer(ref); } return SUCCESS; } public String getReferer() { return referer; } public void setReferer(String referer) { this.referer = referer; } } 上面的代码中有个referer属性: 它是记录之前的url 请看我的配置文件 action name=language class=com.szc.Action.SwitchLanguageAction result name=success${referer}/result /action 这里的${referer}用到了动态result,它指定的是action的属性 language.action?request_locale=zh_CN 这是我的页面url 根据之前的经验参数的n

文档评论(0)

f8r9t5c + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档