编辑: 王子梦丶 | 2019-07-04 |
1 portlet for my-greeting-portlet is available for use 需要重新部署时,右键点击应用服务器下面的相应的名称,在弹出菜单上选择 Redeploy 就可 以了. Liferay Portal 6.2 开发指南
7 创建 Portlet 项目 使用命令行 不翻译了 后面关于 portlet 部署成功的验证也不翻译了 Liferay Portal 6.2 开发指南
8 创建 Portlet 项目 Portelt项目概览 注:因主要使用 Maven,原文中主要是 Ant 的项目结构,有些内容不会翻译. portlet 项目至少由三部分构成: 1. Java 源文件 2. 配置文件 3. 客户端文件(.jsp, .css, .js, 图形文件等) 使用 Maven 构建时,项目结构如下: 项目名称 pom.xml src main/ java/ resources/ webapp/ css/ main.css js/ main.js WEB-INF/ liferay-display.xml liferay-plugin-package.properties liferay-portlet.xml portlet.xml web.xml icon.png view.jsp 创建后就是一个可用的 portlet,可以部署到 Liferay Portal 服务器中. 创建的 portlet 默认使用 MzvcPortlet 框架,这是一个轻量级的框架,它隐藏了 portlet 复杂的 方面,可以轻松实现常规的功能.默认的 MVCPortlet 项目为每种 portlet 模式(mode)分别 提供一个 jsp:每个注册的 portlet 模式对应一个和它名字一样的 jsp.如:edit.jsp 对应 edit 模式,help.jsp 对应 help 模式. Java 源文件保存在 src/main/java 目录. Liferay Portal 6.2 开发指南
9 Portlet 项目概览 配置文件保存在 src/main/webapp/WEB-INF 目录.这个目录中有 JSR-286 标准的配置文件 portlet.xml,还有三个可选的 Liferay 的配置文件.Liferay 的配置文件是可选的,如果要部署 到 Liferay Portal 服务器,这些文件就很重要.以下是这些文件的说明: liferay-display.xml 描述 portlet 显示在 Dockbar(用户登录后,显示在页面顶端的横条) 的 Add 菜单的哪个分类下. liferay-plugin-package.properties 为热部署器(hot deployer)描述 portlet.可以配置 Portal Access Control List(PACL)、.jar 依赖 等. liferay-portlet.xml 描述在部署到 Liferay Portal 服务器时比 JSR-286 增强的 Liferay 特性.例如,可以为 portlet 设置图标、激活一个定时任务 等等.这个文件的完整配置可以 在 Liferay 源代码的 definitions 目录中该文件的 DTD 文件中找到. 客户端文件是用来实现用户界面的 .jsp、.css 和 .js 文件.这些文件都在 src/webapp 目录 下,.jsp 文件在这个目录中,.css 和 .js 文件都在它们各自的目录中. 注意,portlet 只能处理 返回到浏览器页面的一部分.任意 HTML 代码中都不应该包含像 、 这样的全局标签.此外, 应该为所有 CSS class 和元素的 ID 添加命名空间(namespace),以避免和其它 portlet 的 内容冲突. Liferay 提供了两个工具(标签和 API 方法)生成命名空间.阅读 Using Portlet Namespaceing 章节了解更多关于命名空间的内容. My Greeting Portlet 详解 如果你是新手,这些内容会提高你对 portelt 配置选项的理解. Liferay Portal 6.2 开发指南
10 Portlet 项目概览 portlet 的配置内容在 src/main/webapp/WEB-INF/portlet.xml 中,如下: 图 3.3:My Greeting portlet 的 portlet.xml 文件. 这些内容的简要说明: portlet-name portlet 的标准名称.应用(是指 portlet 项目)中的每个 portlet 名称都应该 是唯一的.在 Liferay Portal 中也称为 portelt ID. display-name portlet 的短名,是在 portal 中显示出来的名字.它不需要是唯一的(建议 也不要重名,否则不好区分). portlet-class 处理 portlet 操作的类的全限定名(也就是包括包名和类名的名称,如cn.shuto.portlet.example.action.MyGreetingAction). init-param portlet 的初始化参数,是一个键/值对. Liferay Portal 6.2 开发指南