欢迎来到天天文库
浏览记录
ID:37710646
大小:44.00 KB
页数:4页
时间:2019-05-29
《JSR168规范详解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、JSR168规范详解关于Portlet的一些概念性的文字网络上很多,谷歌或是百度一下可以很容易搜索到,下面我把自己觉得容易混淆和模糊的几个知识点做下简单介绍: 1、PortletRequest&URL 在一个Portal页面中,通常都包含了多个Portlet,在一个时刻用户只能与一个Portlet交互,当用户向一个Portlet发出请求(例如点击了“submit”按钮),整个Portlet页面将会重新构成。在这个过程中,是否有与用户交互的Portlet处理方式显然是不同的,而且用户没有与之交互的Portl
2、et显然不应该接收到用户的请求参数。 因此JSR168规范中将对Portlet的请求分为Action和Render两种。Portlet在收到Action请求,获取用户所提交的信息,进行相应的处理;受到Render请求后,则生成页面代码。当用户向一个Portlet发出请求,该请求被Portlet容器接受,Portlet容器再调用相应Portlet的processAction()方法;等到processAction()方法执行完毕后,Portlet容器再调用所有Portlet的render()方法,并将这些方法所返
3、回的内容组合形成一个页面返回给客户端。在上述过程中,所有Portlet的render()方法的调用次序在规范中没有规定,既可能是有顺序的串行调用,也可能是多线程的同步调用,依赖于厂商的具体实现。 为了接受用户请求,一个Portlet需要有一个指向其自身的URL,例如用在HTTPFORM的ACTION字段。但是与Servlet不同的是,Portlet不是一个完整的页面而只是页面的一部分,一个Portlet可以出现在多个页面中,所以Portlet无法绑定具体的URL。在JSR168规范中定义了Portlet
4、URL接口,通过该接口可以得到指向Portlet自身的URL,对应两种用户请求有两种产生URL的方法:q?4k2@*v_rk*l 一、forrender(): PortletURLurl=response.createRenderURL();www.portalfan.com&S A(`Lv(s url.setParameter(“customer”,”foo.com”); url.setParameter(“show”,”summary”);writer.print(“5、.toString()+””>Summary”); 二、forprocessAction(): `kTi3O PortletURLurl=response.createActionURL(); url.setParameter(“paymentMethod”,”creditCardInProfile”); url.setWindowState(WindowState.MAXIMIZED);www.portalfan.com1x"pVfH writer.print(“6、”ACTION=””+url.toString()+””>”); (r/aIiI(v/i 上面的代码我们可以看到,除了得到URL外,还可以在其中加入参数。另外由于Portal服务器厂商通常都会利用URL增加一些产品相关的参数,因此强烈建议在Portlet中提交用户请求采用POST方式。 2、PortletModes&WindowStates 在Portal应用中,用户通常需要设置、调整Portlet的显示方式,对此JSR168同样做出了规定。分别有PortletModes和WindowStates。 Por7、tletModes说明Portlet目前所执行的功能模式,规范要求Portal服务器必须支持以下三种模式:VIEW——内容显示,通常为缺省模式 EDIT——编辑相关的设置 HELP——显示帮助信息 除此之外可以Portal服务器可以实现自定义的模式。portal爱好者0XLqXP5ivJ 每个Portlet在Portal页面中就是一个“窗口”,类似于MSWindows、XWindo等窗口系统Portlet也有自己的窗口状态(WindowStates),规范要求Portal服务器必须支持以下三种窗口状态: NORM8、AL——普通portlet窗口,在这个状态下通常是与其它Portlet共享Portal页面;portal爱好者t8u/O/F;F MAXIMIZED——最大化portlet窗口,独占Portal页面; J&?'X$az9u_eJ MINMIZED——最小化portlet窗口#la9、M@!YP?2Ng 除此之外可以Portal服务器可以实现自定义的窗口状态
5、.toString()+””>Summary”); 二、forprocessAction(): `kTi3O PortletURLurl=response.createActionURL(); url.setParameter(“paymentMethod”,”creditCardInProfile”); url.setWindowState(WindowState.MAXIMIZED);www.portalfan.com1x"pVfH writer.print(“6、”ACTION=””+url.toString()+””>”); (r/aIiI(v/i 上面的代码我们可以看到,除了得到URL外,还可以在其中加入参数。另外由于Portal服务器厂商通常都会利用URL增加一些产品相关的参数,因此强烈建议在Portlet中提交用户请求采用POST方式。 2、PortletModes&WindowStates 在Portal应用中,用户通常需要设置、调整Portlet的显示方式,对此JSR168同样做出了规定。分别有PortletModes和WindowStates。 Por7、tletModes说明Portlet目前所执行的功能模式,规范要求Portal服务器必须支持以下三种模式:VIEW——内容显示,通常为缺省模式 EDIT——编辑相关的设置 HELP——显示帮助信息 除此之外可以Portal服务器可以实现自定义的模式。portal爱好者0XLqXP5ivJ 每个Portlet在Portal页面中就是一个“窗口”,类似于MSWindows、XWindo等窗口系统Portlet也有自己的窗口状态(WindowStates),规范要求Portal服务器必须支持以下三种窗口状态: NORM8、AL——普通portlet窗口,在这个状态下通常是与其它Portlet共享Portal页面;portal爱好者t8u/O/F;F MAXIMIZED——最大化portlet窗口,独占Portal页面; J&?'X$az9u_eJ MINMIZED——最小化portlet窗口#la9、M@!YP?2Ng 除此之外可以Portal服务器可以实现自定义的窗口状态
6、”ACTION=””+url.toString()+””>”); (r/aIiI(v/i 上面的代码我们可以看到,除了得到URL外,还可以在其中加入参数。另外由于Portal服务器厂商通常都会利用URL增加一些产品相关的参数,因此强烈建议在Portlet中提交用户请求采用POST方式。 2、PortletModes&WindowStates 在Portal应用中,用户通常需要设置、调整Portlet的显示方式,对此JSR168同样做出了规定。分别有PortletModes和WindowStates。 Por
7、tletModes说明Portlet目前所执行的功能模式,规范要求Portal服务器必须支持以下三种模式:VIEW——内容显示,通常为缺省模式 EDIT——编辑相关的设置 HELP——显示帮助信息 除此之外可以Portal服务器可以实现自定义的模式。portal爱好者0XLqXP5ivJ 每个Portlet在Portal页面中就是一个“窗口”,类似于MSWindows、XWindo等窗口系统Portlet也有自己的窗口状态(WindowStates),规范要求Portal服务器必须支持以下三种窗口状态: NORM
8、AL——普通portlet窗口,在这个状态下通常是与其它Portlet共享Portal页面;portal爱好者t8u/O/F;F MAXIMIZED——最大化portlet窗口,独占Portal页面; J&?'X$az9u_eJ MINMIZED——最小化portlet窗口#la
9、M@!YP?2Ng 除此之外可以Portal服务器可以实现自定义的窗口状态
此文档下载收益归作者所有