- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Portlet应用开发(JSR168)Part5
Portlet 应用开发, Part 5
Portlet 的 Session对象
By Terry.li
SpiritSeekerS@
本系列前一部分阐述了Portlet的Request和Response对象,本部分继续讲解Portlet中Session对象.及其与Servlet中Session对象的不同点.
Portlet Session中存取对象的作用范围 (Scope)Servlet中的Session属性和Portlet中的Session属性有一个非常大的不同点, 由于Portlet处于Portal中的缘故, Portlet的Session分为两1. Application Scope2. Portlet Scope这两者的区别在于:1) Application Scope类型的PortletSession中保存的对象对于同一个Portlet Application中的所有其它Portlet来说是可以被访问到的.2) Portlet Scope类型的PortletSession中保存的对象对于同一个Portlet Application中的所有其它Portlet来说是不可见的.但对于Portlet Application来说,其实它也是个Web Application , 因此不论是Application Scope也好,或者是Portlet Scope也好,同样都属于HttpSession,因此都可以通过HttpSession 来访问.实际上Application Scope的Session就是HttpSession , 而Portlet Scope的Session 由于不可被其他Portlet访问, 它的session属性名称有它独特的存取方式, 如下:javax.portlet.p.ID?ATTRIBUTE_NAME其中ID是Portal/Portlet-Container生成用来唯一确定一个Portlet.Portlet Scope 的Session 使用以上的Attribute Name 用以存取Session上绑定的属性. 我们所设制的Portlet Scope 的Session属性由Portlet容器自动转化成以上格式. 用以保证不被其它的Portlet访问到. 注: 以javax.portlet开头的Session属性名称是保留的,不可以用于Portlet的Session 属性名称.
Case study: 不同Scope Session的比较 以下我们将编码实现两个Portlet, 其中一个用来创建session属性的Portlet 和另一个用来验证session属性作用范围的Portlet. 用以验证Session属性的正确性.
Portlet (PortletSessionExample1_GenerateSesssion.java)
… …
public void processAction(ActionRequest request,ActionResponse response)
throws PortletException,IOException{
String action=request.getParameter(ACTION);
if(action.equals(ApplicationScope)){
PortletSession ps=request.getPortletSession();
ps.setAttribute(PortletSession.AS,action,PortletSession.APPLICATION_SCOPE);
}else{
PortletSession ps=request.getPortletSession();
ps.setAttribute(PortletSession.PS,action,PortletSession.PORTLET_SCOPE);
}
}
… …
以上代码片段根据不同参数分别产生不同Scope的PortletSession 的属性 , 作用范围分别为Application 和 Portlet.
Portlet (PortletSessionExample1_DisplaySession.java)这个Portlet调用一个JSP (jspShowSession.jsp) 来获得Portlet session和HttpSession, 并且示出来.
JSP(view_portletsession1_generatesession.jsp)
这个JSP将创建两个ActionURL
您可能关注的文档
- 6007成本会计(补修)141试题.doc
- 6人力资源管理开发(激励机制)【人力资源精选】.ppt
- 673-第一太平洋戴维斯物业管理质量手册(人事行政部分).doc
- 6 第六天 - Review of Correlation & SLR.ppt
- 5上教版六年级上学期音乐教案全集【好过教材10倍的教案,路过别错过】.doc
- 70部要看的欧美电影(下).doc
- 80后人生的40条哲理【兔斯基】.doc
- 6第六章啤酒过滤(新).ppt
- 6有趣的水墨游戏(课件).ppt
- 8投诉、索赔和理算Complaint, Claims & Adjustment.ppt
- 2025年中国铸管沥青漆喷涂机市场调查研究报告.docx
- 2025至2031年中国聚四氟乙割管料行业投资前景及策略咨询研究报告.docx
- 2025至2031年中国屏蔽箱行业投资前景及策略咨询研究报告.docx
- 2025年中国B级电源电涌保护器市场调查研究报告.docx
- 2025至2031年中国陶瓷印章行业投资前景及策略咨询研究报告.docx
- 2025至2031年中国保冷材料行业投资前景及策略咨询研究报告.docx
- 2025至2031年中国金彩立雕玻璃行业投资前景及策略咨询研究报告.docx
- 2025至2030年中国机箱螺母柱数据监测研究报告.docx
- 2025至2030年中国小GS管装饰头数据监测研究报告.docx
- 2025至2030年中国气动电阻焊机数据监测研究报告.docx
文档评论(0)