本文介绍的是简单的Struts portlet开发
首先我们打开ext项目下的ext-web,结构如下:
portlet的配置文件主要有以下几个:
liferay-display.xml
liferay-portlet-ext.xml
portlet-ext.xml
structs-config.xml
tiles-defs.xml
我们开发的portlet一般都放在docroot/html/portlet/ext下面
下面我们进行一个简单的portlet开发:
打开portlet-ext.xml,加入下面的文字:
<portlet>
<portlet-name>EXT_MyPortlet</portlet-name>
<display-name>My Portlet</display-name>
<portlet-class>com.liferay.portlet.StrutsPortlet</portlet-class>
<init-param>
<name>view-action</name>
<value>/ext/my_portlet/view</value>
</init-param>
<expiration-cache>0</expiration-cache>
<supports>
<mime-type>text/html</mime-type>
</supports>
<resource-bundle>com.liferay.portlet.StrutsResourceBundle</resource-bundle>
<security-role-ref>
<role-name>power-user</role-name>
</security-role-ref>
<security-role-ref>
<role-name>user</role-name>
</security-role-ref>
</portlet>
注意一定要放到 <portlet-app></portlet-app> 里面
上面我们定义了一个portlet-name为EXT_MyPortlet,display-name为My Portlet的Portlet,对该portlet拥有权限的用户为超级用户和用户。
接着我们打开liferay-portlet-ext.xml,在 <liferay-portlet-app></liferay-portlet-app> 中间添加如下内容:
<portlet>
<portlet-name>EXT_MyPortlet</portlet-name>
<struts-path>ext/my_portlet</struts-path>
<use-default-template>false</use-default-template>
</portlet>
注意,此处的portlet-name一定要跟portlet-ext.xml中设定的相同,而portlet-ext.xml中
<init-param>
<name>view-action</name>
<value>/ext/my_portlet/view</value>
</init-param>
里面的value的前缀就对应着struts-path
接着我们打开struts-config.xml
加入以下部分:
<action path="/ext/my_portlet/view" forward="portlet.ext.my_portlet.view" />
此处的path应与portlet-ext.xml中的value相同
下一步,打开tiles-defs.xml,加入以下部分:
<definition name="portlet.ext.my_portlet" extends="portlet" />
<definition name="portlet.ext.my_portlet.view" extends="portlet.ext.my_portlet">
<put name="portlet_content" value="/portlet/ext/my_portlet/view.jsp" />
</definition>
此处的第二个definition name应与struts-config.xml中的forward相同
路径配置算是结束了,我们开始新建我们的jsp页面
在ext\ext-web\docroot\html\portlet\ext路径下新建一个名为my_portlet的文件夹,然后我们新建一个名为view.jsp的文件,内容如下:
My Portlet!
最后我们找到ext项目下的build.xml文件,右键run as->ant build...选择deploy,然后执行
等发布完毕,运行startup.bat,用test帐号等入liferay,点add content,undefined->javax.portlet.title.EXT_MyPortlet,我们就可以在页面上看到自己开发的Portlet啦!
简单说一下portlet的运行,当portlet显示的时候,会首先
portlet-ext.xml
<name>view-action</name>
<value>/ext/my_Portlet/view</value>
找到里面的view-action,然后继续去
struts-config.xml
path=“/ext/my_portlet/view”
forward=“portlet.ext.my_portlet.view”
寻找页面的导向,接着去
tiles-defs.xml
name=“portlet.ext.my_portlet.view”
value=“/portlet/ext/my_portlet/view.jsp”
寻找页面的路径,于是在
/portlet/ext/my_portlet/view.jsp路径下找到了要显示的页面
附带的说一句:
portlet的名字为javax.portlet.title.EXT_MyPortlet,似乎很不美观,我们可以在
ext\ext-ejb\classes\content\Language-ext.properties中,加入
javax.portlet.title.EXT_MyPortlet=My Portlet即可
要是想把自己的portlet不放在undefined里面,而放置到test里面,则需要找到
\ext\ext-web\docroot\WEB-INF\liferay-display.xml,
找到<category name="category.test"></category>,在里面加入<portlet id="EXT_MyPortlet" /> <portlet id="EXT_MyPortlet"></portlet>
分享到:
相关推荐
Liferay还引入了Service Builder,使得创建和部署服务变得简单。 2. **Portlet 开发** Portlet是Liferay Portal中的核心组件,是可重用的Web UI模块。开发者可以通过实现JSR 286(Portlet 2.0)规范来创建portlet...
### Liferay 6.0 开发指南核心知识点详解 #### 一、引言与核心技术 在《Liferay 6.0 开发指南》中,首先介绍了Liferay 6.0的核心技术及其开发策略。Liferay是一款强大的开源门户平台,支持企业级应用的构建与部署...
### Liferay 6.0 开发指南核心知识点详解 #### 一、引言与概述 Liferay是一款功能强大且设计优秀的开源门户系统,其版本6.0尤其在多个方面进行了优化和完善,为开发者提供了更加友好和高效的工作环境。本指南旨在...
文档也提到了开发者需要掌握的开发工具,包括安装最新版本的Eclipse IDE,安装Liferay Eclipse IDE插件,以及如何使用该插件创建简单的Portlet。文档还详细描述了一个Portlet项目的构成和结构。 对于支持工具,文档...
【Liferay 6.1 开发学习】 Liferay 是一款开源的企业级门户平台,它提供了内容管理、社交网络、协作工具等功能,适用于构建企业内部或对外的网站和工作平台。Liferay 6.1 版本是其重要的里程碑,包含了丰富的功能...
### Liferay Portal 开发指南知识点概述 #### 一、简介 **Liferay Portal** 是一款功能强大的企业级门户平台,支持多种应用集成和技术扩展。它不仅提供了丰富的特性满足企业日常需求,同时也支持高度定制化开发。...
首先,Eclipse是Java开发者广泛使用的IDE,它提供了丰富的插件支持,使得开发各种类型的项目变得简单。对于Liferay开发,我们需要安装Liferay IDE插件。这个插件可以在Eclipse Marketplace中找到,安装后可以提供...
总之,Liferay 6 提供了一个强大且灵活的开发平台,无论是简单的网站构建还是复杂的业务应用,都能满足开发需求。通过学习和实践,开发者可以充分利用 Liferay 的功能,创造出高效、定制化的解决方案。
"liferay经典的例子源码"这个资源包含了Liferay开发中的一个经典示例,名为"hello-world-ext",这是一个基础的Liferay扩展项目,非常适合初学者了解和学习Liferay的插件开发。 首先,我们要理解"Liferay扩展"的概念...
标题中的“liferay开发需下载的.ivy”指的是在Liferay开发环境中,开发者可能需要配置一个`.ivy`文件,用于定义项目所需的依赖库。这个文件通常包含了项目的依赖关系、版本信息以及其他相关配置,以便Ivy能够自动...
- 易用性设计:通过简单的代码实现复杂的功能,降低开发难度。 - **MVC模式在Liferay中的应用**: - 模型-视图-控制器(Model-View-Controller):Liferay遵循这一设计模式,将数据处理逻辑与用户界面分离,提高...
"liferay培训文档"很可能是包含上述所有信息的详细指南,它可能涵盖了从基础概念到高级开发技巧的全面内容,例如portlet生命周期、portlet渲染机制、portlet间通信(JSR-286的ResourceRequest和ResourceResponse)、...
"plugins开发指南2-开发一个简单的portlet.pdf"将引导初学者了解如何创建并部署基本的Portlet,这是掌握Liferay开发的第一步。 Liferay的插件(Plugins)开发是其扩展性的重要体现。"plugins开发指南1-开发环境搭建...
在描述中提到的实例——“Liferay开发实战(2):Service Builder生成持久化层,一个简单留言板的例子”,我们可以看到Service Builder如何应用于实际项目中。这个例子中,开发者创建了一个名为“guestbook”的portlet...
- **插件模式开发**:一种简单快速的开发方式,适合小规模项目。 - **扩展环境开发**:适用于大型项目,提供更多的定制化选项。 - **两种模式比较**: - **插件模式优点**:易于使用,开发周期短。 - **插件模式...
### Liferay Portal 中文开发指南知识点汇总 #### 一、序言 - **目标读者**:本指南旨在帮助想要在Liferay Portal上开发Portlets的新手开发者。它假设读者已经具备一定的Java编程基础,并了解基本的Web应用开发...
然而,Liferay的开发环境配置并不简单,因为它涉及到许多依赖库和插件的安装。 jikes.exe是一个早期的Java编译器,由IBM开发,它的主要特点是编译速度比标准的JDK自带的javac快。在一些老的或者特定的开发环境中,...
通过以上步骤,您已经成功搭建了Liferay开发环境并创建了一个简单的portlet项目。Liferay的强大之处在于其丰富的功能集和灵活的架构设计,允许开发者快速构建复杂的企业级应用。掌握这些基本操作后,您可以进一步...
- **编写简单JSPPortlet:**通过学习如何编写JSPPortlet,开发者能够理解Liferay Portlet的基本结构和工作原理,为更复杂的开发项目打下坚实的基础。 综上所述,Liferay Portal不仅为企业提供了一个强大的门户平台...
这篇博文将深入探讨如何在Liferay中创建一个简单的Portlet,帮助开发者更好地理解Liferay的开发过程。 首先,让我们了解Portlet的基本概念。Portlet是一种Web组件,它可以嵌入到门户页面中,提供交互式的用户体验。...