欢迎来到天天文库
浏览记录
ID:20435547
大小:54.50 KB
页数:3页
时间:2018-10-12
《使用websphere portal开发多区域设置网站》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、使用WebSpherePortal开发多区域设置网站 本文说明了如何使用Servlet筛选器来基于业务规则确定区域设置,以及如何对传入请求使用此区域设置。首先,我们将看看IBMe/sitename/us/en形式,其中us是国家代码,en是语言代码,即您希望使用en_US区域设置显示结果页。类似地,如果URL为hostname/sitename/ca/en,则表明希望使用en_CA区域设置显示该页。在这种情况下,区域设置编码在URL标记中,您可以使用本文描述的技术确定区域设置,并对请求使用此区域设置。 或者,假定您有一个业务要求,需使用没有导航状态的初始URL。您需要使用用户的
2、首选区域设置显示结果页。如果用户已登录,则使用用户概要中指定的区域设置。如果用户未登录,则要使用浏览器中设置的语言首选项。您可以使用此处描述的技术来应用业务规则,以确定区域设置。 plements.ibm.wsspi.webcontainer.servlet.IServletRequest{privateStringlocale=null;privateLocalelocaleObj;privateListlocales=newArrayList(1);publicLocaleRequestWrapper(H1234下一页....,。ttpServletRequestreques
3、t,Localelocale){super(request);//validatethelocalehereifinvalidlocaleispassed//throentexceptionStringlangCode=locale.getLanguage();StringcountryCode=locale.getCountry();if(langCode!=nulllangCode.trim().length()>0countryCode!=nullcountryCode.trim().length()>0){this.locale=langCode+-+count
4、ryCode;localeObj=nep;langCode.trim().length()>0){this.locale=langCode;localeObj=netheerationgetHeaders(Stringkey){//gettheoriginalrequestHttpServletRequestrequest=(HttpServletRequest)getRequest();//iftheheaderrequestisforlocale,returnthestoredlocaleif(Accept-Language.equalsIgnoreCase(key)){
5、if(locale!=null)returnCollections.enumeration(locales);//ifnolocaleisset,thenreturnavaluethatthewrappedrequestelsereturnrequest.getHeaders(key);} 您还需要重写getLocale和getLocales方法,以返回与getHeader方法所返回的相同的区域设置。 清单3.LocaleRequestWrappergetLocale()和getLocales()方法publicLocalegetLocale(){if(localeObj!=n
6、ull)上一页1234下一页....,。returnlocaleObj;else{//gettheoriginalrequestHttpServletRequestrequest=(HttpServletRequest)getRequest();returnrequest.getLocale();}}publicEnumerationgetLocales(){if(locale!=null)returnCollections.enumeration(locales);else{//gettheoriginalrequestHttpServletRequestrequest=(Htt
7、pServletRequest)getRequest();returnrequest.getLocales();}} 开发和安装Servlet筛选器 现在您需要在Servlet筛选器(我们将其称为LocaleServletFilter)中实例化LocaleRequestap>元素。 清单6.删除以下<attributeMap>元素上一页1234下一页....,。<attributeMapmAttributeName=preferredLa
此文档下载收益归作者所有