- 浏览: 187142 次
- 性别:
- 来自: 深圳
-
文章分类
最新评论
-
masuweng:
好好
与ant结合使用yguard -
lenomon:
你也可以看看这个,Linux同步时间命令ntpdate
Linux与远程时间服务器同步 -
木叶之舟:
我这里有个疑问,就是我想通过拦截外键的属性,该怎样实现呢?
比 ...
springside的filter查询 -
dongbiying:
好!
与ant结合使用yguard -
javaray:
遨豪(大连)科技有限公司自2007年与Liferay,Inc合 ...
Liferay的CAS SSO实现思路
原文地址:http://zuozheng456.blog.163.com/blog/static/23690056200811229450262/
为了使Liferay Portal很好地投入生产应用,除了进行必要的配置之外,还需要进行适度的二次开发,修改Liferay中的不适当部分,添加新的应用功能,并整合现有的应用系统集成到Liferay Portal中来。
一、建立Java开发环境
1、下载安装ant
Apache ant是一个优秀的Java编译工具,许多Java应用软件采用了ant进行编译处理。
从ant开源项目的网站http://ant.apache.org/ 下载最新的ant版本1.7.1软件包apache-ant-1.7.1-bin.tar.gz。把软件包解压缩到目录C:\Java\下,再把产生的目录名apache-ant-1.7.1重命名为ant-1.7.1,即ant的主目录是C:\Java\ant-1.7.1\。
2、下载安装Jikes
有许多Java应用系统选用Jikes软件来编译Java程序。Jikes是IBM创建的一款符合Sun Java技术规范的Java编译器。与Sun 的Java编译器相比,Jikes是开源的,编译速度更快,提供更为清晰的错误和警告提示。
注意,ant同Jikes不是一个东西。Jikes等同于Javac,而ant是个辅助编译工具,主要用来解释编译参数选项,它类似于Unix/Linux系统中的make,而且不管是使用Sun Javac还是IBM Jikes编译器,都可以使用ant工具。
从Jikes网站http://jikes.sourceforge.net/ 下载最新的Jikes版本1.22的软件包jikes-1.22-1.windows.zip。把软件包解压缩到目录C:\Java\jikes-1.22\下。
3、配置系统环境参数
参照“Liferay Portal 应用之安装”篇中的方法,把ANT_HOME=C:\Java\ant-1.7.1和JIKES_HOME=C:\Java\jikes-1.22加入到Windows系统的环境变量中,然后在Path变量的最前面添加上
%ANT_HOME%\bin;%JIKES_HOME%\bin;
即
Path=%ANT_HOME%\bin;%JIKES_HOME%\bin;%JAVA_HOME%\bin;....
4、下载安装Eclipse
Eclipse是一个优秀的软件开发平台,涵盖了软件开发的完整生命周期,包括建模,开发,部署,管理和测试。Eclipse的插入式可扩展架构,使得它能够同时支持Java,C,C++,PHP等语言工具在企业应用、嵌入式应用和实时应用多方面的项目开发。其中,Eclipse Web Tools Platform(WTP)软件包在Eclipse平台中提供了适合于开发Web服务和Java EE应用的丰富工具,再配合适当的插件,完全能够满足绝大多数Java应用开发的需要。因此,我们选择了Eclipse作为Liferay Portal应用的开发平台。
Eclipse WTP软件包的最新版本是3.0.1,要求运行在Eclipse-SDK-3.4以上版本,且需要其他一些扩展软件包如JDT,EMF,GEF等。
首先从Eclipse的网站http://www.eclipse.org/downloads/packages/ 选择下载Eclipse IDE for Java EE Developers软件包eclipse-jee-ganymede-win32.zip,解压缩到C:\Java\目录中,产生目录eclipse。
再到 http://download.eclipse.org/webtools/downloads/ 选择下载WTP软件包wtp-R-3.0.1-20080818032401.zip,也解压缩到C:\Java\目录下,覆盖已有的eclipse目录(仅添加了plugins和features子目录内容)。
最后,把Eclipse的安装目录名eclipse重命名为eclipse-3.0.1,即Eclipse WTP的主目录是C:\Java\eclipse-3.0.1\。进入该目录执行eclipse.exe启动eclipse平台。该平台界面是英文版的,但支持中文处理。
二、建立Liferay开发环境
1、安装Liferay源程序包
我们在“Liferay Portal 应用之安装”篇中已经下载了Liferay源程序包liferay-portal-src-5.1.0.zip。现在把它解压缩到C:\Projects\liferay-5.1.0\目录下,然后把生成的目录liferay-portal-src-5.1.0重命名为portal,即Liferay的源程序目录是C:\Projects\liferay-5.1.0\portal\。
2、建立扩展开发环境
(1)建立扩展开发目录ext
先确认自己电脑的Windows用户名。在C:\Projects\liferay-5.1.0\portal\目录中建立属性文件release.{用户名}.properties,本人的用户名是jingxiao,因此要建立的文件名是release.jingxiao.properties,文件内容只有一行:
lp.ext.dir=C:/projects/liferay-5.1.0/ext
然后进入DOS窗口,转入目录C:\Projects\liferay-5.1.0\portal\,执行命令:
ant clean start build-ext
若干分钟后命令执行完成,在C:\Projects\liferay-5.1.0\目录中建立了ext子目录,这是进行二次开发的扩展目录,包含了从源程序目录portal中建立并复制来的java类包、源程序、属性文件和配置文件等等。
(2)部署扩展开发环境
接下来要测试新建的扩展开发环境是否可用,能否正确生成运行环境。
打开扩展开发目录ext中的部署属性文件app.server.properties,找到单独使用Tomcat服务器的定义参数部分。在该属性文件中,缺省定义Tomcat服务器使用的是Tomcat 5.5版本,而我们使用的是Tomcat 6.0服务器(Liferay-5.1.0+Tomcat-6.0集成包),因此要把原来Tomcat 6.0属性定义的注释符号去除掉(有关Tomcat 5.5的定义还要保留),使得下列定义语句有效:
app.server.tomcat.version=6.0
app.server.tomcat.dir=${app.server.parent.dir}/tomcat-6.0.16
app.server.tomcat.classes.global.dir=${app.server.tomcat.dir}/lib
app.server.tomcat.lib.endorsed.dir=${app.server.tomcat.dir}/lib/ext
app.server.tomcat.lib.global.dir=${app.server.tomcat.dir}/lib/ext
app.server.tomcat.lib.support.dir=${app.server.tomcat.dir}/lib/ext
app.server.tomcat.support.dir=${app.server.tomcat.dir}/lib/ext
app.server.tomcat.zip.name=liferay-portal-tomcat-6.0-${downloads.version}.zip
然后在扩展开发目录ext下,建立对应于用户名的扩展部署属性文件app.server.{用户名}.properties,即app.server.jingxiao.properties,其内容如下:
app.server.type=tomcat
app.server.tomcat.dir=C:/Projects/liferay-5.1.0/tomcat-6.0
最后,在DOS窗口中进入扩展开发目录C:\Projects\liferay-5.1.0\ext\,执行命令:
ant clean deploy
经过几分钟的处理后,当DOS窗口出现BUILD SUCCESSFULE提示时,部署成功,ext目录中的内容经过编译打包后部署到了运行环境tomcat-6.0目录下。
现在来测试重新部署的Liferay Portal是否工作正常。进入tomcat-6.0\bin\目录,执行startup.bat启动Liferay(MySQL数据库和LDAP服务器应该优先启动),用浏览器打开网址http://localhost:8080/,展现出同部署前一样的界面。以admin用户登录一切正常。
但由于使用了ant clean,将把已经部署到Tomcat的其他应用(webapps目录中)给删除了。因此,要么只用ant deploy来部署,要么事先备份好非Liferay Portal的那些应用目录,如Liferay的主题风格插件。
(3)建立eclipse开发项目
启动eclipse,指定工作项目目录为C:\Project\liferay-5.1.0\。在eclipse启动后的主窗口中,把鼠标移到右边的Workbench图标上,打开eclipse的工作台面。
先建立一个Java项目ext。在主菜单File列表中,依次点击New->Other…。在打开的New过滤窗口中,点开Java项目,选择Java Project子项目并按Next按钮进入下一步配置。在New Java Project窗口中,指定Project Name为ext;在Content栏目中,选择“Create project from existing source”,并在Directory栏目浏览选择现有项目的目录为C:\Projects\liferay-5.1.0\ext\。其他选项不予理会,直接按Finish按钮,eclipse将会在左侧的Package Ext窗口下建立ext项目。
按照上面的方法,再建立一个Java项目portal。其中Project Name为portal,也是选择从现有项目建立,且目录在C:\Projects\liferay-5.1.0\portal\。
再来开启显示ant窗口。在主菜单Window列表中,依次点击Show View->Other…。在打开的Show View过滤窗口中,点开Ant项目,选择Ant子项目并按OK按钮确定。这样将在eclipse右侧的窗口中调出ant显示标签。
然后打开ext项目,把build.xml配置文件拖拽到刚才建立的ant窗口中。如果要把ext项目部署到Tomcat服务中,仅需双击ant窗口中的deploy [default] [from …]项,等待最下面的Console窗口中出现BUILD SUCCESSFUL提示,则部署完成。
为了能够在eclipse中直接控制Tomcat服务器的启动或停止,方便开发调试,我们将给eclipse安装一个Tomcat插件。从http://www.eclipsetotale.com/tomcatPlugin.html 网站下载最新版的tomcat插件包tomcatPluginV321.zip,把它解压缩到eclipse的插件目录C:\Java\eclipse-3.0.1\plugins\中。退出正在运行的eclipse再重新启动之,可以看到,在eclipse的快捷图标栏上多出了三个Tomcat的新图标:分别用来启动(Start Tomcat)、关闭(Stop Tomcat)和重启动(Restart Tomcat)Tomcat服务器。
接下来需要配置Tomcat插件的使用。在主菜单Window下,打开Preferences窗口,点击Tomcat项目进行配置:选择Tomcat版本为Version 6.x;指定Tomcat home为C:\Projects\liferay-5.1.0\tomcat-6.0。
由于在同一台电脑上运行了较多的Java应用,需要配置Java虚拟机的参数。点击Tomcat项目下的JVM Settings子项目,在Append to JVM Parameters栏,按Add按钮添加如下两行参数:
-Xms256m -Xmx1024m -XX:MaxPermSize=128m
-Dfile.encoding=UTF8 -Duser.timezone=GMT+8
或
-XX:MaxNewSize=256m -XX:MaxPermSize=256m
上述配置完成之后,就可以在eclipse中按动Tomcat工具图标来控制Tomcat服务器的启停。
至此,Liferay在eclipse平台下的开发环境全部建立起来了。
三、Liferay应用开发
在我们建立的eclipse开发环境中进行应用开发。按照Liferay的建议,二次开发最好是在ext项目中进行。而且在ext项目中,Liferay的核心内容是经过打包后复制过来的,对Liferay的修改或应用开发要按照Liferay的建议,以“扩展”的形式来实现。这样的话,当Liferay升级更新了源码后,重新生成ext项目时也不会覆盖原来在ext中所作的变动。
1、修改中文译文
在Liferay Portal中使用者可以随时切换到不同的语种界面。与其他Java应用一样,Liferay的国际化也是通过使用对应于各种语言的资源文件实现的。国际化的资源文件名格式为Language_{语种名称}.properties。例如,简体中文的资源文件名是Language_zh_CN.properties。Liferay的基础语言是英语,在每个语种的资源文件中定义了英语词句与该语种词句的对应关系。因此,中文译文的修改比较容易。
由于Java资源文件的编码格式是ISO-8859-1,而我们使用的中文Windows操作系统的编码是GBK,因此不能直接显示和编辑资源文件内容,需要为eclipse添加一个资源文件编辑插件Jinto。进入网站http://www.guh-software.de/jinto_en.html, 选择下载适合于eclipse 3.3.X版本的插件包de.guhsoft.jinto-0.11.0.zip。下载后解压缩到eclipse目录C:\Java\eclipse-3.0.1\中。
启动eclipse,依次打开portal项目->portal-imp/src->content,找到简体中文语言资源文件Language_zh_CN.properties,把它复制到ext项目的对应目录下(ext项目->ext-imp/src->content),再重新命名为Language-ext_zh_CN.properties。我们所要修改的将是这个新文件。这是一种扩展修改方式,它保留了原来资源文件里的定义,但可以用新的定义替换旧的,也可以添加新的定义项。
打开该文件进行修改时,可以先把那些无需修改的定义项给删除掉,以减少重复的内容,方便修改。由于Jinto资源编辑器没有批量替换功能,就只能逐条修改了。修改完成要保存文件,并执行ant部署操作之后,才能够在Liferay Portal的运行系统中起作用。
2、增加网页布局模板
我们打算仿照系统已有的70/30比例的两列模板,制作一个40/60比例的两列布局模板。制作步骤如下:
(1)打开portal项目,进入portal-web->docroot目录中,把layouttpl子目录复制到ext项目的对应目录ext-web->docroot中。然后再次进入portal项目的portal-web->docroot->WEB-INF目录,把配置文件liferay-layout-templates.xml也复制到ext项目的对应目录ext-web->docroot->WEB-INF中,并把它重命名为liferay-layout-templates-ext.xml。
(2)修改配置文件liferay-layout-templates-ext.xml,去除多余的定义内容,仅保留有关2_columns_iii的定义内容。再把文件里的_iii改为_iv,修改70/30为40/60。修改好的文件内容如下:
<?xml version="1.0"?>
<!DOCTYPE layout-templates PUBLIC "-//Liferay//DTD Layout Templates 5.1.0//EN"
"http://www.liferay.com/dtd/liferay-layout-templates_5_1_0.dtd">
<layout-templates>
<custom>
<layout-template id="2_columns_iv" name="2 Columns(40/60)">
<template-path>/layouttpl/custom/2_columns_iv.tpl</template-path>
<wap-template-path>/layouttpl/custom/2_columns_iv.wap.tpl</wap-template-path>
<thumbnail-path>/layouttpl/custom/2_columns_iv.png</thumbnail-path>
</layout-template>
</custom>
</layout-templates>
(3) 进入ext项目的ext-web->docroot->layouttpl目录,删除文件thumbnails.zip和目录standard。进入custom目录,只保留2_columns_iii.pnp,2_columns_iii.tpl和2_columns_iii.wap.tpl三个文件,删除其余文件。再把这三个文件对应地重命名为2_columns_iv.pnp,2_columns_iv.tpl,2_columns_iv.wap.tpl。其中,2_columns_iv.wap.tpl是移动设备浏览版式,不必修改。2_columns_iv.pnp是版式模板的示例图片,可以复制出来用图形处理软件进行适当修改。2_columns_iv.tpl是电脑浏览器格式模板,需要作如下修改:把该文件中的seventy修改为forty;把该文件中的thirty修改为sixty。修改完成之后,2_columns_iv.tpl文件内容如下:
<div class="columns-2" id="content-wrapper">
<table class="lfr-grid" id="layout-grid">
<tr>
<td class="lfr-column forty" id="column-1" valign="top">
$processor.processColumn("column-1")
</td>
<td class="lfr-column sixty" id="column-2" valign="top">
$processor.processColumn("column-2")
</td>
</tr>
</table>
</div>
上述操作完成之后,经过ant部署处理,系统管理员就可以在“布局模板”列表中挑选使用新建立的2 Columns(40/60) 模板了。
3、修改内嵌的Portlet
Liferay Portal预制了数十个Portlet,提供了较为丰富的功能。我们可以按照自己的喜好,对这些内嵌Portlet进行适当的修改。
在portal工程项目中,依次打开目录portal-web->docroot->html->portlet,可以看到所有的内嵌Portlet都在这里面。如果仅仅是修改某些Portlet,只需要把它们复制到ext项目对应位置,然后修改其中的程序。比如,我们想修改Document Library和Document Library Display这两个Portlet,打算取消原来显示WebDAV URL的行。具体步骤如下:
(1)进入portal工程项目的portal-web->docroot->html->portlet目录中,把document_library目录复制到ext项目的对应目录ext-web->docroot->html->portlet中。
(2)进入ext项目,打开复制来的document_library目录,编辑view.jsp程序。在view.jsp中查找字符串WebDAV,把有关显示WebDAV URL行的语句注释掉,即添加注释符号,如下所示:
<!--
<c:if test="<%= WebDAVUtil.isEnabled(DLWebDAVStorageImpl.class.getName()) %>">
<table class="lfr-table">
… …
</table>
</c:if>
-->
(3)如前所述,修改完成之后需要保存并部署,所作修改才能够起作用。
可见,修改原有的Portlet并不难,关键是对Portlet规范和架构熟悉,仔细读懂Portlet程序和配置定义。
4、开发新的Portlet
下面我们将参照Liferay网站的例子,介绍如何在扩展开发环境下,建立一个简单的Struts架构的 Portlet,起名为Library。在ext项目下,已经有一个示范性的reports Portlet存在,我们可以参考它来建立Library Portlet。
(1)定义Portlet
有关Portlet的配置文件全部放置在ext项目的ext-web\docroot\WEB-INF\目录中。
一个新的portlet还需要在portlet-ext.xml和lifray-portlet-ext.xml中进行定义。在portlet-ext.xml的<portlet-app>…..</portlet-app>之间已经有了reports Portlet的定义,在其后面添加有关Library的定义内容如下:
<portlet>
<portlet-name>Library</portlet-name>
<display-name>Library Portlet</display-name>
<portlet-class>com.liferay.portlet.StrutsPortlet</portlet-class>
<init-param>
<name>view-action</name>
<value>/ext/library/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>
在lifray-portlet-ext.xml配置文件中,同样在reports Portlet的定义之后,添加Library的定义内容:
<portlet>
<portlet-name>Library</portlet-name>
<struts-path>ext/library</struts-path>
<use-default-template>false</use-default-template>
</portlet>
在library-display.xml文件中把Library Portlet定义到sample(样品)分组中,即把<portlet id="Library" />添加到<category name="category.sample">的下面。
按照上面的定义,在Liferay中新建立了Library Portlet,且命名为Library,但在Liferay中的实际引用名称将是javax.portlet.title.Library,不够简练,因此需要把它重命名为便于识别的名称“图书馆”。
进入ext项目的ext-imp/src->content目录,打开Language-ext.properties资源文件,添加一条定义行:
javax.portlet.title.Library=图书馆
(2)定义网页的流转和显示方式
struts-config.xml用来定义网页的流转。该文件已经有了reports Portlet的定义,只需在</action-mappings>之前添加如下几行有关library的定义:
<!-- Library -->
<action path="/ext/library/view" forward="portlet.ext.library.view" />
<action path="/ext/library/add_book" type="com.ext.portlet.library.action.AddBookAction">
<forward name="portlet.ext.library.error" path="portlet.ext.library.error" />
<forward name="portlet.ext.library.success" path="portlet.ext.library.success" />
</action>
tiles-defs.xml定义网页的显示方式。同上,该文件中已经有了reports Portlet的定义,只需在</tiles-definitions>之前添加有关library的定义,内容如下:
<!-- Library -->
<definition name="portlet.ext.library" extends="portlet" />
<definition name="portlet.ext.library.view" extends="portlet.ext.library">
<put name="portlet_content" value="/portlet/ext/library/view.jsp" />
</definition>
<definition name="portlet.ext.library.error" extends="portlet.ext.library">
<put name="portlet_content" value="/portlet/ext/library/error.jsp" />
</definition>
<definition name="portlet.ext.library.success" extends="portlet.ext.library">
<put name="portlet_content" value="/portlet/ext/library/success.jsp" />
</definition>
(3)建立处理程序
在ext-web\docroot\html\portlet\ext\目录中建立library目录,在此放置网页显示处理程序。
建立Portlet初始化程序init.jsp,内容如下:
<%@ include file="/html/common/init.jsp" %>
建立Portlet显示程序view.jsp,内容如下(注意,eclipse缺省使用的字符编码是ISO-8859-1,不能保存中文字符。因此需要修改程序文件的字符编码格式:用鼠标右键点文件名调出处理列表,再点击最后一项Properties。在Properties配置窗口的右边有“Text file encoding”选项,从“Other:”栏选择UTF-8,保存配置即可。):
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ include file="/html/portlet/ext/library/init.jsp" %>
<br/>
向图书馆增加书:
<br/><br/>
<form action="<portlet:actionURL windowState=
"<%= WindowState.MAXIMIZED.toString() %>">
<portlet:param name="struts_action" value="/ext/library/add_book" />
</portlet:actionURL>" method="post" name="<portlet:namespace />fm">
书 名:
<input name="<portlet:namespace />book_title" size="20" type="text" value=""><br/><br/>
<input type="button" value="Submit"
onClick="submitForm(document.<portlet:namespace />fm);">
</form>
<br/>
建立操作成功的处理程序success.jsp,内容如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ include file="/html/portlet/ext/library/init.jsp" %>
<%
String bookTitle = request.getParameter("book_title");
%>
<table align="center" cellspacing="10" cellpadding="3">
<tr>
<td style="font-weight:bold">增加的书名:</td>
<td><%= bookTitle %></td>
</tr>
</table>
建立操作错误的处理程序error.jsp,内容如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
出现错误,操作失败!
然后建立增加书目的事务处理程序AddBookAction.java。参照reports Portlet,我们在ext-imp/src目录中建立Java包com.ext.portlet.library.action,并建立Java程序AddBookAction.java内容如下:
package com.ext.portlet.library.action;
import javax.portlet.ActionRequest;
import javax.portlet.ActionResponse;
import javax.portlet.PortletConfig;
import javax.portlet.RenderRequest;
import javax.portlet.RenderResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.liferay.portal.struts.PortletAction;
public class AddBookAction extends PortletAction {
public void processAction(
ActionMapping mapping, ActionForm form, PortletConfig config,
ActionRequest req, ActionResponse res) throws Exception {
String bookTitle = req.getParameter("book_title");
if ( null == bookTitle || "".equals(bookTitle) ) {
setForward(req, "portlet.ext.library.error");
} else {
setForward(req, "portlet.ext.library.success");
}
}
public ActionForward render(ActionMapping mapping, ActionForm form,
PortletConfig config, RenderRequest req, RenderResponse res) throws Exception {
if (getForward(req) != null && !getForward(req).equals("")) {
return mapping.findForward(getForward(req));
} else {
return mapping.findForward("portlet.ext.library.view");
}
}
}
(4)部署和使用。
执行ant deploy部署ext项目到Tomcat服务器。启动Tomcat并打开Liferay Portal主页,以admin用户登录,向当前网页添加应用。可以看到,在sample(样品)分组下出现了我们刚建立的Library Portlet应用,把它拖放到网页上测试使用。
5、精简Liferay的Portlet
在Liferay Portal内置的几十个Portlet中,有许多是我们不需要的,比如有关网店购物的Portlet。通过在扩展配置文件中重新定义,我们可以把那些不需要的Portlet注销掉。
打开ext项目,进入ext-web->docroot->WEB-INF目录,编辑配置文件liferay-portlet-ext.xml。把需要注销的Portlet的定义项从注释框架中分离出来使它有效,再把<include>true</include>中的true修改为false即可。下面一段定义语句将把购物(Shopping)Portlet从Liferay Portal中屏蔽掉:
-->
<portlet>
<portlet-name>34</portlet-name>
<struts-path>shopping</struts-path>
<include>false</include>
</portlet>
<!--
6、修改网页主题风格
Liferay支持主体风格插件。使用者可以按照规范制作个性化的网站主体格式,也可以从Liferay社区下载网友制作的插件使用。最新的Liferay 5.1.0版本对主题插件规范进行了修改,旧版本主题插件部署之后不能够使用了。好在新版本附带了一个主题插件Jedi,我们可以对照Jedi插件中的配置,把旧版主题插件部署之后经过修改,就可以使用了。下面以旧的主题插件包alef-theme-5.0.1.war为例,解释如何给5.1.0版本的Liferay添加新的主题插件:
(1)把alef-theme-5.0.1.war重命名为alef-theme.war,复制到Liferay的热部署目录C:\Documents and Settings\{用户名}\liferay\deploy\下。注意,本例的{用户名}为jingxiao。如果Tomcat已经启动Liferay在运行,几分钟之后该插件包将被部署到Tomcat的webapps目录下:
C:\Projects\liferay-5.1.0\tomcat-6.0\webapps\alef-theme
(2)分别进入Jedi和alef两个主题插件的WEB-INF目录。对比发现,Jedi插件多处了两个配置文件:liferay-look-and-feel.xml和liferay-plugin-package.xml。因此,我们把Jedi中的这两个文件复制到alef的对应目录中。
(3)修改alef-theme/WEB-INF/目录中新复制来的两个文件内容:把“liferay-jedi”修改为“alef”;把“Liferay Jedi”修改为“Alef”;把“liferay/liferay-jedi-theme/5.1.0.1/war”修改为“liferay/alef-theme/5.0.1/war”。
经过以上处理,5.0.1版本的alef-theme插件就可以在5.1.0版本的Liferay中使用了。
另外,对于主题插件,可以修改其中的CSS配置来调整外观格式。
7、其他
(1)修改缺省主页(guest)右上角显示的“Welcome!”。
尽管在Liferay的中文资源配置文件中已经把“Welcome”一词翻译为“欢迎”,但Liferay的缺省主页在中文界面仍然显示的是“Welcome”而不是“欢迎”。检查发现,该词是在数据库表user_中定义的,因此,要直接进入数据库,把user_表中缺省用户(defaultUser=1)的greeting值从“Welcome!”修改为“欢迎访问!”即可。
(2)修改缺省用户所在区域和语言
Liferay在system.properties资源文件中定义了缺省用户所在的国家/地区,语言和时区。我们可以重新定义这些缺省值。把portal项目portal-imp/src目录中的文件system.properties复制到ext项目对应目录中(ext-imp/src),并重命名为system-ext.properties(如果已经存在,先删除之)。然后打开文件进行编辑处理:先把那些不需要修改的参数项删除掉,重新定义如下值:
user.country = CN
user.language = zh_CN
user.timezone =GMT+8
(3)其它缺省参数的定义
Liferay还在portal-imp/src目录的portal.properties文件中定义了其它常用的缺省参数值,同样可以在对应目录ext-imp/src的portal-ext.properties文件中进行重新定义。比如把原来在portal.properties中定义的通告类型列表:
announcements.entry.types=general,news,test
重新在portal-ext.properties中定义为:
announcements.entry.types=general,news,notice
同样可以重新定义期刊文章的类型,直接定义为中文名称:
journal.article.types=动态信息,公告,通知,其它
以上简单介绍了有关Liferay Portal的应用开发方法。在实际应用中,还需要仔细研究Liferay的程序架构和源码,理解相关技术和规范(特别是JSR-168规范),才能够更好地开发和应用Liferay Portal产品。
发表评论
-
liferay5.1布署到weblogic9.2
2009-08-14 17:26 2044在部署liferay之前最好是 ... -
Portal产品介绍--开放源码Portal产品
2009-07-17 14:30 2917原文地址:http://neujingxiao.blo ... -
Liferay的一个简单的自动部署的方法
2009-07-17 13:07 1055原文地址:http://liaojunyong.spaces. ... -
Portal技术综述
2009-07-17 12:22 2719原文地址:http://neujingxi ... -
Liferay的CAS SSO实现思路
2009-07-17 11:27 3012原文地址:http://zuozhe ... -
单点登录JA-SIG研究分析
2009-07-17 11:24 1425原文地址:http://zuozheng456.blog.16 ... -
SSO 原理浅谈
2009-07-17 11:23 2913原文地址:http://zuozh ... -
liferay配置文件说明
2009-07-17 09:31 1519原文链接:http://zuozheng456.bl ... -
Liferay Portal应用之配置-liferay5.1
2009-07-16 16:43 2170原文地址:http://zuozheng4 ...
相关推荐
综上所述,这个资料包为Liferay 5.1的学习和开发提供了全面的指导,无论是管理员进行系统管理,还是开发者进行portlet开发或环境定制,都能从中获取宝贵的信息。通过对这些文档的深入学习,用户能够更好地理解和掌握...
- **开发IDE**: 推荐使用Lomboz 3.2、MyEclipse 6.0、MyEclipse Enterprise 5.1或Eclipse 3.2进行开发工作。 #### 二、准备工作 **2.1 设置DNS后缀** 为了确保Liferay门户系统的正常运行,需要设置正确的DNS后缀。...
- **liferay-portal-src-5.1.zip:** 包含 Liferay Portal 源代码的压缩包,用于后续开发。 - **liferay-portal-tomcat-5.1.zip:** 包含 Liferay Portal 与 Tomcat 集成的预配置版本,方便快速部署。 **3. 建立...
** 可参考一篇博客文章 [《在 Liferay 5.1 项目上生成 ext 项目做二次开发》](http://zuozheng456.blog.163.com/blog/static/23690056200811229450262/),该文提供了在 Liferay 5.1 上进行快速二次开发的方法。...
LifeRay是一款功能强大的企业级内容管理平台,支持多种应用开发方式,包括portlet(门户小部件)开发、主题定制以及布局模板设计等。 **1.1 出版者注** 文档开头部分包含了出版者的注意事项,这部分通常会给出文档...
- 集成应用包:`liferay-portal-tomcat-6.0-5.2.3.zip` - MySQL 5.0 数据库安装文件:`MySql.exe` - Java 连接 jar 文件:`mysql-connector-java-5.0.4-bin.jar` - MySQL 工具:`MySQLFront-v5.1.357.zip` 2. *...
【Liferay 5.2.3 开发环境搭建】 Liferay 是一款强大的开源门户平台,基于J2EE架构,融合了EJB、JMS等多种技术。它的前端使用Struts MVC框架,通过XML配置文件实现portlet的动态扩展。此外,Liferay还集成了Web服务...
1.2 Using Liferay Portal as a collaborative platform . . . . . . . . . . . . . . 6 1.3 Using Liferay as a social platform . . . . . . . . . . . . . . . . . . . . . 7 1.4 Using Liferay as a web ...
**Liferay Portal 4.0 开发者指南** 主要面向开发人员,提供了全面的指南来帮助用户理解如何安装、配置并开发基于 Liferay Portal 4.0 的应用程序。该文档覆盖了从开发环境的搭建到高级定制功能的各个方面。 ##### ...
该环境搭建主要用于开发和测试 Liferay Portal 的自定义扩展和portlet。 主要特点: 1. 单一登录接口,支持多种认证方式,如 LDAP 和 SQL。 2. 管理员可以通过用户友好的界面轻松管理用户、组和角色。 3. 用户可...
### Liferay 5.2.3 Tomcat6 Eclipse IDE 开发文档详解 #### 一、前言 **1.1 编写说明** 本开发文档旨在为初学者和经验丰富的开发者提供全面指南,涵盖Liferay 5.2.3与Tomcat6在Eclipse IDE中的集成、配置和开发...
这是很难找到的一本liferay的电子书,其版本比官方网站上文档的还要新,对应软件的5.1版本,相信大家会觉得物有所值的。
《Liferay Portal 4.0 开发者手册》是一份详尽的技术文档,旨在为希望在Liferay Portal 4.0平台上开发应用的软件工程师提供全面的指导与资源。这份手册由Joseph Shum和Alexander Chow编写,覆盖了从环境搭建到代码...
【Liferay 5.2.3 环境搭建】是指在本地计算机上配置和安装Liferay ...完成上述步骤后,你将能够在本地环境中运行和开发Liferay Portal 5.2.3项目。这个过程对于理解Liferay的内部结构、调试代码或定制功能至关重要。
这是很难找到的一本liferay的电子书,其版本比官方网站上文档的还要新,对应软件的5.1版本,相信大家会觉得物有所值的。
根据给定文件的信息,我们可以提炼出关于Liferay Portal 4中的内容管理系统(CMS)的关键知识点。以下是基于文档标题、描述、标签以及部分内容所提取的重要知识点: ### 一、简介 Liferay Portal 4是一个功能强大...
格里芬,Neil Griffin是Liferay Portal的委员以及JSF开发团队领导者,并且是Portlet Faces项目的合作创始人。 目录 第I部分 javaserver faces框架 第1章 javaserver faces简介 1.1 什么是javaserver faces 1.2 ...
格里芬,Neil Griffin是Liferay Portal的委员以及JSF开发团队领导者,并且是Portlet Faces项目的合作创始人。 目录 第I部分 javaserver faces框架 第1章 javaserver faces简介 1.1 什么是javaserver faces 1.2 ...
包括CPU主频1GHz以上,内存1GB以上,硬盘自由空间1GB以上,操作系统为Windows 2003 Server或Windows XP,数据库服务器为MySQL-5.1.28,应用服务器为Tomcat 6.0,Java环境为JDK 1.6.0_07,以及Liferay Portal 5.1.1和...