2,Portal里的主角是Portlet,Portal页面上的一个个区域正是由Portlet组成的,如下图所示:(图片来源于Portlet in Action)
3,下面来开发一个Portlet项目,在Eclipse中新建一个web项目,目录结构如下:portlet.jar可以从下载的LifeRay的iferay-portal-tomcat-6.x.x.zip解压后的tomcat的lib/ext文件夹里找到.
3.1,HelloWorldPortlet的Java代码:
package com.test.portal;
import java.io.IOException;
import java.io.PrintWriter;
import javax.portlet.GenericPortlet;
import javax.portlet.PortletException;
import javax.portlet.RenderRequest;
import javax.portlet.RenderResponse;
import javax.portlet.RenderMode;
public class HelloWorldPortlet extends GenericPortlet {
@RenderMode(name = "VIEW")
public void sayHello(RenderRequest request, RenderResponse response)
throws PortletException, IOException {
PrintWriter out = response.getWriter();
out.println("My Hello World Portal");
}
}
@RenderMode(name = "VIEW")告诉Portal server sayHello方法是render 请求的view模式要调用的方法.
portlet.xml内容:
HelloWorldPortlet
Hello world
com.test.portal.HelloWorldPortlet
text/html
view
content.Language-ext
portlet.xml的内容都是符合Portlet标准规范的内容,liferay-portlet.xml:
HelloWorldPortlet
true
true
liferay-display.xml:
language-ext.properties:
category.helloWorld=myPortlets
javax.portlet.title=My Hello world portlet
language-ext.properties中定义的javax.portlet.title指定的值会被LifeRay用来作为Portlet的标题.category.helloWorld定义的值被liferay-display.xml的
将项目打包成war文件,拷贝到LifeRay运行环境的liferay-portal-6.0.3\deploy目录中,项目会自动发布到LifeRay Portal server.然后在Portal页面就可以把刚刚开发的portlet加入到页面中.Add-->More-->..Add
刚刚开发的portlet被加入到页面中:
完整的代码可以从http://download.csdn.net/detail/kkdelta/4081523下载