本文主要涉及內(nèi)容:
修改網(wǎng)站的公司LOGO;
增加用戶;
增加頁面;
Liferay中的Groups及用戶、角色、頁面組之間的關(guān)系;
IE中修改文字大小對(duì)于portlet布局的影響;
增加用戶注冊(cè)的入口;
設(shè)置Liferay代理的方法;
登錄過程緩慢的解決方法;
修改訪客首頁的方法。
本文所述均經(jīng)作者實(shí)踐,本人的環(huán)境是tomcat 5.0.28,liferay 3.6.1,jdk 1.4.2_09,mysql 5.0.6
修改網(wǎng)站的公司LOGO:
通過admin(管理)portlet,以管理員登陸應(yīng)可以在左側(cè)看到,如果沒有,從下面的portlet列表中添加。
點(diǎn)擊該portlet上的company鏈接,然后點(diǎn)logo圖片下面的change鏈接。
上傳一個(gè)200*50的圖片(它的注釋寫的不對(duì),如果上傳250*50的圖片,版面將變得混亂),然后會(huì)自動(dòng)刷新,
顯示出這個(gè)新LOGO。
增加用戶:
通過admin(管理)portlet,以管理員登陸應(yīng)可以在左側(cè)看到,如果沒有,從下面的portlet列表中添加。
點(diǎn)擊該portlet上的users鏈接,然后在右側(cè)輸入用戶的信息,然后點(diǎn)擊add按鈕,將增加一個(gè)用戶,如果已
配置了mail服務(wù)器,將發(fā)送一封郵件給該新增用戶,里面包括一些歡迎信息及初始密碼等信息。
默認(rèn)的新增用戶角色是Power Users 和Users。該用戶會(huì)自動(dòng)本地化,登陸后看到的界面是中文的。
增加頁面:
通過admin(管理)portlet,以管理員登陸應(yīng)可以在左側(cè)看到,如果沒有,從下面的portlet列表中添加。
點(diǎn)擊該portlet上的group鏈接,選擇一個(gè)要增加頁面的桌面,然后點(diǎn)擊edit pages 按鈕
在page name文本框內(nèi)輸入頁面名,然后點(diǎn)擊add new Page按鈕。
在左側(cè)的樹中選擇該新增的頁面,然后在右側(cè)的portlet列表中可以選擇已有的portlet添加到頁面上。
點(diǎn)擊update pages按鈕。
Liferay中的Groups及用戶、角色、頁面組之間的關(guān)系:
進(jìn)行配置管理時(shí),強(qiáng)烈建議不要使用本地化的中文界面,有很多翻譯的并不貼切,還不如直接看英文看的明白。
我認(rèn)為一個(gè)重大失誤是Groups的翻譯,應(yīng)該翻譯為頁面組或桌面,而不是用戶組,詳情繼續(xù)往下看。
Liferay中的Groups是指頁面組,或者說是桌面,并不是用戶組。
Liferay中用戶、角色、頁面組之間的關(guān)系我理解是這樣的,portlet是最小元素,它們單獨(dú)或共同完成一些
業(yè)務(wù)操作。頁面是包含一個(gè)或若干portlet的容器。頁面組是一些頁面的組合。角色如需對(duì)某些頁面組(即這
些頁面組包含頁面上的portlet)進(jìn)行操作,將這些頁面組劃歸為某個(gè)角色即可。一個(gè)用戶可以擁有一個(gè)或多
個(gè)角色,用戶登錄時(shí),根據(jù)他所擁有的角色顯示不同的頁面組。用戶也可以直接擁有頁面組,用戶登錄時(shí),將
顯示他擁有的頁面組。它們之間的關(guān)系如附件中的圖所示。
實(shí)際操作過程中,發(fā)現(xiàn)必須把頁面組(桌面)分配到用戶,才會(huì)有效,而只分配給某用戶隸屬的角色,并不生
效,不是很明白系統(tǒng)管理中把頁面組分配給角色的意義何在,望與大家探討,共同學(xué)習(xí)。
在某個(gè)頁面組(桌面)中創(chuàng)建頁面時(shí),可以指定頁面的類型,portlet是指一些portlet的組合,url是指一個(gè)
具體的頁面url,可以引用其它服務(wù)器上的某業(yè)務(wù)的url,embedded也是引用一個(gè)url,但與url不同的是內(nèi)嵌
式,使用liferay的外觀,內(nèi)部是引用的頁面顯示的內(nèi)容。
創(chuàng)建頁面組(桌面)時(shí),有一個(gè)Friendly URL,這里一般不填寫內(nèi)容。對(duì)于guest用戶,它們查看的是General
Guest桌面,這里填寫了Friendly URL 為/web/guest,其下的Company,Products,Downloads等都是作為
General Guest桌面的頁,每個(gè)都有一個(gè)Friendly URL,各個(gè)頁面引用的portlet名稱雖然一樣,但顯示內(nèi)容
并不相同,我覺得Liferay是根據(jù)Friendly URL的不同而顯示不同的內(nèi)容。以管理員身份查看General Guest
桌面,將看到edit article,Preferences鏈接,可以編輯文章、banner,修改文章、banner的顯示參數(shù)。
IE中修改文字大小對(duì)于portlet布局的影響:
上周為了查看Liferay自帶的文檔,里面有一些代碼的文字非常小,因此調(diào)整了IE菜單“查看”-“文字大小”
為最大,隨后就把此事拋到了腦后。后來訪問Liferay 的Home頁面,發(fā)現(xiàn)本應(yīng)顯示在右側(cè)寬列的“news”,
“Calendar”等portlet都顯示到了左邊窄列,大惑不解。我嘗試了很多辦法,包括重新將Liferay 的tomcat
包重新解壓縮,重新安裝jdk1.4,刪除ie緩存、cookie …… 均告無效。剛才在另一臺(tái)機(jī)器上部署之后,比
較兩臺(tái)機(jī)器的異同,發(fā)現(xiàn)那些頁面文字“Home A1”“Test 1”還有portlet標(biāo)題文字怎么都那么大,再一看
ie的文字大小配置,才恍然大悟,修改為“中”,一切恢復(fù)正常。為了不讓遇到類似情況的朋友們走彎路,
特意寫出供大家參考。
增加用戶注冊(cè)的入口:
以管理員身份登錄系統(tǒng),點(diǎn)擊admin portlet中的Company,在最下面的Allow strangers to create accounts?
選擇Yes,然后點(diǎn)擊Update按鈕,如果這時(shí)以為大功告成,你就錯(cuò)了,還要繼續(xù)如下的配置。
修改Groups,在左側(cè)列表框選General Guest,然后點(diǎn)擊下面的Edit Pages按鈕,在左側(cè)的樹狀結(jié)構(gòu)中,點(diǎn)擊
Home,然后右邊中間列出了所有Portlet的目錄,選擇tools,然后選My Account(w),將增加到下方的列表框
中,再點(diǎn)擊最下面的Update Page按鈕,這時(shí),點(diǎn)擊左上角的sign out,回到首頁,你看到新出現(xiàn)的My Account
了么?在密碼輸入框下有一個(gè)Create Account鏈接,點(diǎn)它進(jìn)入,就可以進(jìn)行注冊(cè)了,和通常的注冊(cè)方法一樣。
令人奇怪的是,好像更改之后要稍等一會(huì)才能看到My Account,要不你就再開一個(gè)窗口訪問
http://localhost設(shè)置Liferay代理的方法:
Liferay中有不少portlet訪問了外部網(wǎng)站的資源,如果你的服務(wù)器可直接上網(wǎng),不需要配置代理服務(wù)器即可正
常瀏覽這些資源,但是有很多服務(wù)器為了安全并不是直接可以上網(wǎng)的,因此需要進(jìn)行如下配置。
先下載3.6.1的源代碼包:liferay-portal-ent-3.6.1-src.zip,解壓縮到一個(gè)文件夾,然后修改
portal-ejb\classes\system.properties 中這兩行
#com.liferay.util.Http.proxy.host=192.168.0.200
#com.liferay.util.Http.proxy.port=4480
把行首的#去掉,然后把后面的host和port修改為你的代理服務(wù)器地址、端口,存盤后將這個(gè)文件拷貝到
Tomcat\common\classes目錄中,重起tomcat,現(xiàn)在你已可以訪問外部網(wǎng)站提供的資源了。
登錄過程緩慢的解決方法:
在修改代理的時(shí)候,發(fā)現(xiàn)portal-ejb\classes\system.properties 中有一行寫的是:
com.liferay.util.Http.timeout=5000
如果你覺得無需訪問外部網(wǎng)站,這個(gè)值可以只設(shè)置為500,存盤后復(fù)制到Tomcat\common\classes目錄中,重起
tomcat,登錄時(shí)是否有了飛一般的速度?
修改訪客首頁的方法:
強(qiáng)烈建議在修改之前把相應(yīng)的xsl文件備份!
以管理員test@liferay.com登錄,通過右上角的下拉框,選擇“General Guest”桌面,這時(shí)看到的是訪客的
首頁,只是在右下角多了Edit Article,Preferences鏈接。點(diǎn)擊Edit Article,這時(shí)可以修改內(nèi)容。建議在
修改時(shí),同時(shí)打開另一個(gè)窗口察看首頁,這樣可以方便的了解各個(gè)修改的內(nèi)容將在頁面的哪個(gè)位置顯示。
點(diǎn)擊最下面的Template 旁邊的Home Index,將對(duì)于Home Index模版進(jìn)行修改。在新顯示的頁面上,可以對(duì)于
模版名稱,說明進(jìn)行修改,同時(shí)可以上傳xsl格式的文件來替換現(xiàn)有的模版。先點(diǎn)擊上傳框下面的Edit XSL
Template按鈕,將彈出新窗口顯示當(dāng)前的XSL的模版,不建議采用這種方式。點(diǎn)擊Download XSL Template按
鈕,將xsl文件下載后使用XML編輯器進(jìn)行修改編輯,然后再上傳。Small Image是上傳一個(gè)模版的縮略圖或者
指定internet上的一個(gè)圖片作為模版縮略圖(縮略圖將替代模版說明顯示于cms桌面上的 Journal portlet中
的Templates 列表中)。
對(duì)于XSL文件中各個(gè)標(biāo)簽的用法,可以參照現(xiàn)有xsl文件和頁面顯示來了解它們的含義。
你的網(wǎng)站可能不需要顯示Liferay的兩個(gè)demo圖片,因此你可以在下載的xsl文件中搜索
http://demo.liferay.net把其所在的整個(gè)table刪除,保存后上傳,再用訪客刷新首頁,那兩個(gè)圖片是不是已經(jīng)沒有了?
在 is a leading provider of open source... 之前的Liferay是一個(gè)圖片,你的網(wǎng)站可能也不需要它,在xsl
中查找<img src="@root_path@/image/image_gallery?img_id=22"/>,把這個(gè)刪除,就不會(huì)看到那個(gè)圖標(biāo)了,
當(dāng)然,你還要在Edit Article頁面中修改main text的內(nèi)容。
以此類推,你可以修改該模版的其他內(nèi)容。
至于首頁上的其他內(nèi)容,比如寫著Liferay.com is built on Liferay Portal.的圖片,要替換的話,在Edit
Article頁面中修改main image,可以從你本地電腦中選擇一個(gè)適當(dāng)大小的圖片上傳。
在Edit Article頁面的最下面,Structure旁邊有一個(gè)HOME-INDEX的鏈接,點(diǎn)擊之后進(jìn)入Structure的修改頁面,
你可以增加或者刪除一些網(wǎng)頁元素,要注意的是,這里的修改是和模版密切相關(guān)的,如果你錯(cuò)誤的刪除了某些元素
模版中找不到對(duì)應(yīng)的內(nèi)容,將無法正確顯示。
同樣的,這里你也可以把xsl文件下載后編輯完成后再通過Edit XML Schema Definition進(jìn)行更新(沒有上傳不
是很方便)。
也許有人要問,那個(gè)訪客登錄的輸入框,我怎么在xsl文件中沒有看到相應(yīng)的form,input什么的?
你在下載的template xsl文件中搜索<runtime-portlet name="58" />,然后再到liferay\WEB-INF\liferay-
portlet.xml文件中搜索58,現(xiàn)在就明白了吧。它的登錄入口是作為一個(gè)portlet加入到home-index中的。你可以
嘗試在適當(dāng)位置添加<runtime-portlet name="2" /> <runtime-portlet name="34" /> 等訪客有權(quán)限view的
portlet,然后看一下效果。
訪客可看的其他頁面,諸如companys,downloads等,也可按照此方法逐一修改。
參考資料:
1. Liferay Portal 二次開發(fā)指南 柯自聰
2. www.liferay.com 的在線文檔