posts - 40,  comments - 187,  trackbacks - 0
说在前面的话: 
    最近很忙很忙,很久没吐过泡了,呵呵。近期笔者会将最近应用Spring Portlet MVC开发Portlet的一些经验和教训记录在此,供大家共同研究,拍砖。


Chapter1 相关介绍

Portlet:
    一个 Portlet 是以 Java 技术为技术的 Web 组件,由 Portlet Container 所管理,专门处理客户的 request 以及产生各种动态的信息内容。Portlet 为可插式 ( pluggable ) 的客户界面组件,提供呈现层成为一个信息系统。
这些由 portlet 产生的内容也被称为片段 (fragment),而片段是具有一些规则的Markup( HTML、XHTML、WML ),而且可以和其他的片段组合而成一个复杂的文件。而 Portlet 中的内容正常来说是与其他 Portlet 的内容聚合而成为一个 Portal 网页。而 Portlet 的生命周期是被 Portlet Container 所管理控制的。
 
Portlet Container:
    portlet container 是提供 portlets 执行的环境,包含了许多 portlets 并且管理他们的生命周期,他也会永远保存着 portlets 的喜好设置,一个 portlet container 接收到来自 portal 的请求后,接着将这个请求传递给存在 container 的 portlet 执行。portlet container 没有义务去组合 portlets 产生的信息內容,这个工作必须由 portal 来处理。portal 和 portlet container 可以放在一起视为同一个系统的组件,或者分开成为两个独立的组件。
 
    当用户请求一个portlet的时候,portlet container 接收 portlet产生的内容。通常 portlet container 将这些内容提交给 portal server,portal server 从这些内容建立 portal page 然后将它传给客户端。相关的介绍请大家参看JSR168 spec.

Spring Portlet MVC:

1. Portlet不能够像Spring一样直接经由HttpServletRequest指向相对路径(如:action="/SpringDuty/sign.jsp")将页面表单信息传给指定页面或者Controller,而是用另一种写法经由指定的Action转向(如:action"<portlet:actionURL> <portlet:param name='action' value='doIt'/></portlet:actionURL>");
 
2. Portlet有自己定义的Request,文中使用到了两种:ActionRequest*、*RenderRequest。
• ActionRequest:它的作用与HttpServletRequest相同,将当前表单对象传给转向对象。
• RenderRequest:在门户系统中,Portlet之间的共享信息是放在RenderRequest中,这样可以在单点登陆后每个Portlet即可在相应权限下获取所需的信息(如用户信息)
    ActionRequest的获取很简单,不做赘述。如何获得RenderRequest呢?为了获得RenderRequest,可以首先让Portlet经由一个自己做的DispatcherController通过protected ModelAndView handleRenderRequestInternal(RenderRequest arg0, RenderResponse arg1)方法来返回一个ModelAndView,其中ModelAndView返回一个Map对象,Map中放入RenderRequest对象arg0和RenderResponse对象arg1,View是需要呈现的首页,这样,首页就能获取RenderRequest了。

3. Portlet和Spring一样,也有自己的转发器org.springframework.web.portlet.DispatcherPortlet,它负责将获得的Action转发给相应处理。portlet根据自己的转发器和当前Portlet的状态决定跳转到哪个页面,大致流程如下:
• portlet根据配置信息,首先找到View或者经由Controller跳转到View;
• 当进行相应动作时,portlet根据当前的状态(view,edit,help)跳转到相应View或者Controller;
• 其它过程与Spring类似.

简单介绍了Portlet的一些概念后,现在开始Spring Portlet MVC开发介绍吧。


                                                       To Be Continued...
posted on 2008-01-03 17:34 小立飞刀 阅读(5931) 评论(2)  编辑  收藏 所属分类: Portal

FeedBack:
# re: 应用Spring Portlet MVC开发自己的Portlet(1)
2008-04-02 21:19 | 踏着夕阳归去
学习了,呵呵,请问能不能给个例子。  回复  更多评论
  
# re: 应用Spring Portlet MVC开发自己的Portlet(1)[未登录]
2008-06-26 09:49 | xuan
现在我们公司也在让学习portlet,期待有例子贴出,期待……  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航:
 
<2008年1月>
303112345
6789101112
13141516171819
20212223242526
272829303112
3456789

生存或毁灭,这是个必答之问题:是否应默默的忍受坎苛命运之无情打击,还是应与深如大海之无涯苦难奋然为敌,并将其克服。此二抉择,究竟是哪个较崇高?

常用链接

留言簿(12)

随笔分类(43)

相册

收藏夹(7)

朋友的博客

电子资料

搜索

  •  

积分与排名

  • 积分 - 301835
  • 排名 - 192

最新评论

阅读排行榜

评论排行榜