一些关于Liferay的使用心得


Liferay是一个出色的Java开源Portal产品,其中整合了很多当今流行的开源框架,被不少人使用在实际项目中。最近刚结束了一个基于Liferay Portal的项目,总结下使用中的一些心得,希望对正在使用Liferay的朋友有些帮助。

一、安装

Liferay的安装十分容易,甚至都不能称其为安装,根据情况从Liferay官方网站下载合适的安装包(一般可以选择Tomcat的Bundle),解压后直接运行,它会使用自带的HSQL数据库,其中包括一些初始数据和演示数据。

实际使用时不能用HSQL,也不应该有演示数据,所以可以用Liferay站点提供的SQL来初始化数据库。Liferay-portal-sql的包比较大,只要用其中的几个SQL就行了,如果是全新安装,用create-minimal目录中适合自己数据库的那个SQL文件就可以了。

启动tomcat前,修改conf\Catalina\localhost中的ROOT.xml,启用新的数据源,Hibernate的Dialect系统会自动识别的。

二、Portal细节配置

Liferay的可配置性极强,可以通过两个部分来配置,一是portal-ext.properties文件,二是进入系统后用企业管理Portlet来配置。

要了解portal-ext有哪些可以配置的参数,可以打开portal-impl.jar中的portal.properties,其中对每个属性都带有详细的说明,portal-ext.properties会覆盖其中的配置。

列举几个个人认为比较有用的设置:


1.登录相关(这个可以在企业管理里设置)

company.security.auth.type=screenName
company.security.auto.login=false
company.security.send.password=false
company.security.strangers=false
open.id.auth.enabled=false

 

2. 默认用户布局
可以自己设置上面要放的Portlet和布局。

default.user.layout.name=Home
default.user.layout.template.id=3_columns
default.user.layout.column-1=
default.user.layout.column-2=
default.user.layout.column-3=
default.user.layout.column-4=

 

3. Session控制

session.timeout=30
session.timeout.warning=1
session.timeout.auto.extend=false

 

4.无法显示的portlet设置
我本来在JavaEye上问怎么隐藏没权限的Portlet呢,结果后来看到了这个配置。

layout.show.portlet.access.denied=false
layout.show.portlet.inactive=false

 

其他的设置还有很多,比如terms.of.use.required、theme.sync.on.group、auth.forward.by.last.path、default.landing.page.path等等,请参考portal.properties。如果不想修改配置文件也能用企业管理Portlet,它们有些地方是互补的,所以结合起来看看吧。

三、简单性能优化

项目中使用的是一台Intel 3.20GHz双核 2G内存的IBM服务器,操作系统为Windows 2000 SP4,数据库为Oracle 9i,安装在另一台服务器上。

Liferay的默认设置在运行时总是感觉有些力不从心,有时响应速度很慢,开发时可以接受,但实际上线时肯定需要进行调整。因为没什么调优经验,所以随便对Tomcat和Liferay的参数做了些调整,仅供参考:

首先修改Tomcat 5.5的JVM的参数,考虑到服务器上还有其他服务,JAVA_OPTS中,-Xms512m –Xmx1024m,因为把JDK换成了jrockit-R27.4.0-jdk1.6.0_02,所以没有设置-XX:MaxPermSize。

然后安装Tomcat Native library,就是APR啦。

接下来修改server.xml,找到HTTP/1.1的Connector,调整maxThreads、minSpareThreads、maxSpareThreads和acceptCount的值,适当调高些,并启用gzip压缩。先运行一段时间,如果有需要再做调整,我的配置是这样的:

<Connector port="80" maxHttpHeaderSize="8192"
     maxThreads="768" minSpareThreads="128" maxSpareThreads="256"
     enableLookups="false" redirectPort="8443" acceptCount="768"
     connectionTimeout="30000" disableUploadTimeout="true" 
     compression="on" compressionMinSize="2048" 
     noCompressionUserAgents="gozilla, traviata" 
     compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
     />

 修改好应用服务器后,再来看看Liferay。打开portal-ext.properties,添加如下内容:

portlet.css.enabled=false
javascript.fast.load=true
theme.css.fast.load=true
velocity.engine.resource.manager.cache.enabled=true

 经过了以上这些步骤后,都不用什么工具测试,可以明显感觉系统速度快了不少。

四、一些问题

1.糟糕的中文翻译
虽说Liferay的作者是华裔的,不过那中文翻译实在不敢恭维,好在网上有些网友自制的中文包,不过内容并不完全。可以自己增加或覆盖中文语言信息,文件名是Language-ext_zh_CN.properties,放在WEB-INF/classes/ content目录中,至于其中的内容参考下portal-impl.jar里的资源包,记得使用前先native2ascii转换一下。


2.控制台信息
Liferay的控制台输出时区不对,且中文有乱码。在企业管理Portlet的设置中将时区设置为(GMT +08:00)CST可以解决时间问题。

控制台的中文乱码有两种解决方法,一是在catalina.bat中去掉JAVA_OPTS里的-Dfile.encoding=UTF8;另一种就是conf/logging.properties,加上java.util.logging.ConsoleHandler.encoding = GBK,建议用后者吧。其实说白了就是因为Windows用的编码是GBK。

3.Document Library文件名乱码
Document Library Portlet提供了文件上传和下载的功能,可惜上传的中文名在下载时都会乱码,原先以为是一般的中文乱码问题,在Liferay自己的web.xml中补上了一段Spring的编码转换Filter声明,结果发现不行,看了源代码后才知道它直接用servlet进行文件下载,而问题还是出在Windows是GBK上。

也懒得想什么好办法了,直接修改com.liferay.portlet.documentlibrary.action.GetFileAction文件,在第128行,把ServletResponseUtil.sendFile参数中的fileEntry.getTitleWithExtension()改成new String(fileEntry.getTitleWithExtension().getBytes("GBK"),"ISO8859_1")。这样可以解决Windows下的乱码,别的不做保证,最好能实现判断下编码,有些系统默认编码是UTF-8,转了反而会出问题。

4.关于默认用户权限
Liferay默认新建用户的角色是User和Power User,每个用户可以有自己的私有页面,不过有时不希望出现这个私有的Community,在企业管理Portlet中可以调整默认用户的设置(默认Community、Role和User group),我去掉了Power User角色。

但问题也随之而来,要求用户强制在第一次登录时修改密码,修改后出现没有为用户配置页的提示,而且放在Guest里的文档库普通用户也无法下载。郁闷了老半天之后,只能为所有的用户都分配了一个Community才把问题解决(我直接把用户扔进Guest Community了)。

 

Liferay Portal开发实战:从MVC实例到企业级应用 Liferay Portal是一款开源的企业级门户解决方案,由Liferay公司维护和开发。它提供了一套完整的功能框架,支持多站点管理和多语言环境,允许用户通过插件扩展来丰富其功能。Liferay Portal不仅仅是一个内容管理系统,还能够集成多种Web应用程序和商业逻辑,形成了一个可以满足多种企业需求的综合平台。在本节中,我们将通过一个具体的案例来展示Portlet开发的全过程。Liferay提供了完善的国际化支持,可以方便地为不同语言环境的用户提供相应语言界面。国际化框架包括资源文件、 阅读详情

相关推荐

LT9211 单路mipi转双路mipi芯片,方案成熟,提供技术支持

LT9211 单路mipi转双路mipi芯片

TEL15012949045的博客 5022

Liferay Portal 6.1基本功能介绍

Liferay Portal既是一个开源门户网站建设工具,同时也是一个基于Java架构的应用软件系统开发平台。它不仅具有强大的网站内容管理和基于文件的内容管理功能,而且还集成了协作套件、开放社交、应用开发、权限管理、工作流、知识库、规则引擎和搜索引擎等J2EE应用程序。Liferay Portal是一个完全可定制的互联网应用系统建设平台,并且其社区版是完全免费的,值得各类门户网站建设人员和Ja...

lancao82的博客 747

Linux平台CCS安装配置完整示例

手把手讲解在Linux系统中完成CCS安装与环境配置的全过程,涵盖关键步骤与常见问题解决,是查找ccs安装教程时不可多得的实战指南。

weixin_42601134的博客 514

Liferay Portal 6学习笔记1:Portal介绍

LifeRay Portal 6于7月15日正式发布了,从今天起在这里写下自己的LifeRay Portal学习笔记   Liferay是一个开源的Portal产品,提供对多个独立系统的内容集成,为企业信息、流程等的整合提供了一套完整的解决方案,和其他商业产品相比,Liferay有着很多优良的特性(但是缺点也很明显,文档太少,学习成本有点高),而且免费,对于Liferay portal的详细介...

冷月V天一 324

MD01和MD01N比较

摘要:MD01(传统MRP)与MD01N(MRP Live)是SAP系统不同版本的物料需求计划事务码。核心差异包括:MD01N取消MRP列表、简化计划规则、合并MPS/MRP操作、采用BAdI技术等,体现S/4HANA平台简化、标准化和智能化的演进方向。MD01N通过优化参数配置、增强筛选功能、利用HANA实时计算能力,实现了更高效的物料计划流程,代表了新一代计划引擎的技术革新。

SAP_LES_COM的博客 892

WSL2网络配置全攻略:如何让Windows和Linux子系统互相访问端口(附防火墙设置)

本文深入解析WSL2的网络架构,并提供详细的端口互通配置指南。针对WSL2与Windows宿主机之间常见的网络访问问题,文章从原理出发,逐步讲解如何识别网络环境、配置Windows防火墙规则、调整服务监听地址,并介绍镜像网络模式等进阶优化方案,最终实现稳定可靠的双向端口访问。

sony5的博客 1148

Liferay使用心得

 Liferay是一个出色的Java开源Portal产品,其中整合了很多当今流行的开源框架,也被不少人使用在实际项目中。最近刚结束了一个基于Liferay Portal的项目,总结下使用中的一些心得,希望对正在使用Liferay的朋友有些帮助。 一、安装Liferay的安装十分容易,甚至都不能称其为安装,根据情况从Liferay官方网站下载合适的安装包(一般可以选择Tomcat的B

Danny Dong的专栏 808

全面解析智能座舱芯片参数:高通 (SA8295)vs 联发科,真实案例一行行讲给你听!

使用场景推荐芯片中低端车型 + 1屏导航语音SA8155P / MT8628(性价比高)中控+副驾+仪表+全景影像SA8255P / MT8678(性能强)高阶自动驾驶+域控融合SA8295P(顶级安全+算力)

weixin_43199439的博客 2079

【转】Liferay使用心得

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33725270的博客 135

OpenClaw人人养虾:接入Synology Chat

Synology Chat 是群晖 NAS(Network Attached Storage,网络附属存储)内置的即时通讯应用。

王国平的博客 780

CLAHE 算法学习 matlab

概念可参考: CLAHE (Contrast Limited Adaptive Histogram Equalization)算法学习CLAHE具体实现主要包括6个步骤。1):分块。将输入图像划分为大小相等的不重叠子块,每个子块含有的像素数为M。参考示例为8×8块。 2):计算子块直方图。 3):计算剪切阈值clipLimit 4):像素点重分配。对每个子块,使用步骤三中多余的像素重新分配。 5):直方图均衡。 6):像素点灰度值重构。(源码中采用了双线性插值) http://www.realtimer

baidu_34971492的博客 4253

liferay和java有关吗_一些关于Liferay的使用心得 | 学步园

Liferay是一个出色的Java开源Portal产品,其中整合了很多当今流行的开源框架,被不少人使用在实际项目中。最近刚结束了一个基于Liferay Portal的项目,总结下使用中的一些心得,希望对正在使用Liferay的朋友有些帮助。一、安装Liferay的安装十分容易,甚至都不能称其为安装,根据情况从Liferay官方网站下载合适的安装包(一般可以选择Tomcat的Bundle),解压后直...

weixin_39940688的博客 203

利用 Python 构建高效爬虫爬取国家标准文献——从基础到进阶

然而,由于许多标准文献需要从特定网站获取,手动下载既耗时又低效,因此构建自动化爬虫成为一种实用且高效的解决方案。本文从技术选型、网站分析、代码实现到反爬优化,全面讲解了如何爬取国家标准文献。国家标准文献(National Standards Literature)是国家对各领域统一规范的文件,涵盖了技术参数、测试方法、生产工艺等内容。因此,通过自动化爬虫技术进行文献爬取和管理,不仅能解放劳动力,还可以提高数据管理效率。在构建爬虫前,我们需要对目标网站进行分析,包括页面结构、请求方式以及可能的反爬机制。

2201_76125261的博客 2105

Liferay使用心得 (转载)

Liferay是一个出色的Java开源Portal产品,其中整合了很多当今流行的开源框架,也被不少人使用在实际项目中。最近刚结束了一个基于Liferay Portal的项目,总结下使用中的一些心得,希望对正在使用Liferay的朋友有些帮助。   一、安装 Liferay的安装十分容易,甚至都不能称其为安装,根据情况从Liferay官方网站下载合适的安装包(一般可以选择Tomcat的Bund

1292

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Liferay使用心得 (转载)

http://blog.sina.com.cn/s/blog_4aad61e7010083oa.html     liferay文档库重新部署后无法下载问题 http://blog.youkuaiyun.com/lifesounds/archive/2008/06/05/2514181.aspx

jiasudu 167

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

liferay安装 开发心得(一)

Liferay 教程一、liferay安装文件结构解压liferay-developer-studioNext     配置sql服务器安装完毕  没图的话就是默认默认配置二、新建liferay Plugin Project 补充说明:Portlet:这个是一般做Liferay开发选择的项目,一般说Liferay插件工程,通常都是指的Portlet工程。他的结构和内容和普通的WEB工程区别不大。H...

fwk19840301的博客 2311

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

liferay安装 开发心得(二)

1、src:这里存储Java相关文件包,后面会看到还有一个services包。2、web.xml:此web.xml和普通的web工程的web.xml文件一样。3、build.xml,此文件为ant的构建文件,一般不需要修改继承自SDK。4、Liferay-plugin-package.properties,此文件为包工程的元数据信息文件,一般开发不需要关注。5、portlet.xml:portle...

fwk19840301的博客 1399

学习liferay心得(一)

    这段时间公司正好要使用liferay做项目,所以对liferay进行了一些了解,主要对liferay的配置修改与风格主题的修改的心得先放到上面跟大家同享,希望对新人有所帮助。有不对的地方还望指出。关于二次开发方面的会在以后实际开发中总结出来与大家同享。     我想大家在使用liferay做为平台时,首先面临如何改造liferay的页面,我先就把我这方面的经验介绍一下。         一...

冬雪风铃 160

liferay遇到的问题

  研究liferay快一个月了,取得的成果不大.不过发现的问题不少,自己都没有想出方法来解决.比如liferay如何设置默认的语言,当游客浏览的时候显示中文,还有如何修改liferay的logo,等等很多的问题.不过已经解决了一些.随后会总结自己遇到的问题和解决方法.希望有机会得到高手的指教. 1、  liferay的中文默认。 其实没有太大的必要,因为liferay的内容编辑功能不能同时对内容...

hatlar1的专栏 230

Liferay Portal额外研究(一):初步在新Tomcat下部署

Liferay额外研究(一):初步在新Tomcat下部署 从现在开始,会把我最近在研究的开源Portal Liferay一些心得贴出来。研究Liferay版本:Liferay Professional 4.0.0 柯自聪兄弟写过一系列的Liferay Portal开发文章,参考http://www.blogjava.net/eamoi/。所以基础性内容,本文不再细说,可参考柯自聪的

davidmr_001的专栏 3283

liferay5.2.1基础数据库和 MySql安装的心得

 测试了一下liferay5.2.1的新版本。1、默认用户名和密码是 test@liferay.com  和test。2、导入mysql.sql文件建立基础数据库后,启动liferay的时候仍然是默认hypersonic。根据tomcat黑屏中的提示,修改了portal-impl.jar中的portal.properties文件,把hypersonic注掉,(以前都是更改root.xml文件,5.

cyw8998的专栏 1013

liferay开发环境配置说明

项目接近尾声了,客户突然提出了很多的功能性的开发,郁闷死为了赶上进度,从明天开始就要进行地狱式的开发了,在这期间我会把自已所有的心得全写上来,以前的开发环境被我做测试搞的乱七八糟,没办法只能重新配置了,关于配置在网上已经有很多了,自已偷了个赖就找了一篇写的比较好的比较完整的配置文档给COPY了过来,希望别人不会找我麻烦.先给说下 在后面的开发主要方向是日志文章,全文搜索,产品开发,权限四块.下面...

Tyler_Zhou 317
上一篇: 一些关于Liferay的使用心得
下一篇: ActiveRecord与AR-JDBC的兼容性问题
dingx
博客等级 码龄24年 67粉丝 112原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值