[Liferay]Portlet 规范中ResourceURL 介绍以及使用

来源:互联网 发布:淘宝上的win10激活码 编辑:程序博客网 时间:2024/05/16 11:02

关于 resourceURL:

Resource Serving Phase 是在 JSP-286 (Portlet 2.0) 规范中增加的 portlet 生命周期之一, 另一个 Event Phase。

在一个 portlet 生命周期中, serveResource() 方法也就是 Resource Serving Phase 对应的方法, 在请求 ResourceURL 的状态下会被触发。


关于 Resource Serving 生命周期的定义简单来说就是如下几点:

  • Resource Serving 生命周期允许 portlet 可以不用调用页面上所有 portlet 的 Render 生命周期而直接传回动态内容
  • 在 Portlet 1.0 规范中,portlet 的一个请求往往是返回一整个页面。
  • A Resource is requested via a ResourceURL. 得使用 ResourceURL 请求 Resource 生命周期。
  • Resource serving 非常适用于动态创建图像文件以及其他二进制资源;为AJAX请求返回 XML, JSON, HTML 片段,等等。

在普通 portlet 开发过程中如果想使用 Resource Serving 生命周期代码如下:

Jsp 代码:

<p><a href="" onclick="loadXMLDoc('<portlet:resourceURL/>'); return false">点击调用 Resource Serving 生命周期</a></p>

Java 代码, 在 继承自 GenericPortlet 的 portlet 实现类中添加:
public void serveResource(ResourceRequest resourceRequest, ResourceResponse resourceResponse)throws PortletException, IOException{resourceResponse.setContentType("text/html");resourceResponse.getWriter().write("Resource served successfully!");}

完成简单的两部,在页面点击按钮,就能成功调用 serverResource() 方法







0 0