Ch ng .1ươ Gi i thi u Portal – Liferay.
.1.1. Portal là gì?
Portal c ng thông tin đi n t . Khác v i các website thông th ng portal n i ườ ơ
tích h p h u h t các thông tin và d ch v c n thi t cho ng i ng. S ra đ i c a ế ế ườ
portal nh m gi i quy t c nh c đi m c website thông th ng m c ph i ế ượ ườ
nh khó b o trì, tích h p, m r ng, v.v… đ c bi tkh năng tùy bi n khá cao, cáư ế
nhân hóa, tính b o m t cao và đăng nh p m t .
Phân lo i portal.
y thu c o m c đích cung c p d ch v cho ng i dùng cu i ta nh ng ườ
c ng thông tin nh sau ư :
C ng thông tin công c ng (Public portals): Khi mu n ghép n i các thông tin
l i v i nhau t nhi u ngu n, nhi u ng d ng t nhi u ng i ta ng ườ
lo i c ng thông tin này. Ngi ra n cho phép nn a
(personalization) các website theo t ng đ i t ng ng i dùng. Ví d Yahoo. ượ ườ
C ng thông tin doanh nghi p (Enterprise portal hay Corporate Desktops):
C ng thông tin này đ c xây d ng đ cho phép các thành viên c a doanh ượ
nghi p s d ng và t ng c trên c thông tin hay ng d ng nghi p v tác ươ
nghi p c a doanh nghi p.
C ng gáo d ch đi n t (Marketplace portals): n i lien k t gi a ng iơ ế ườ
n và ng i mua. Ví d : eBay, ChemWeb.ườ
C ng thông tin ng d ng chuyên bi t (Specialized portals): d nh SAP ư
portal, c ng thông tin lo i y cung c p các ng d ng chuyên bi t khác
nhau.
Tính năng c b nơ
c lo i c ng thông tin đ u chung m t s tính năng c b n. Ng i ta xem c ơ ườ
tính năng đó nh m t tiêu chu n đ phân bi t portal v i m t website t ng h p tinư
t c, ng d ng qu n tr n i dung website, ho c m t ng d ng ch y trên n n Web.
Kh năng nhân hoá (Customization hay Personalization): Portal đ c hi nượ
th theo nhi u cách khác nhau y thu c vào đ i t ng ng i dùng hay nhóm ượ ườ
ng i s d ng. M i nhân th t ch nh s a ch th hi n thông tin, ngườ
d ng theo yêu c u s d ng.
ch h p nhi u lo i thông tin (Content aggregation) : Cho phép y d ng n i
dung thông tin t nhi u ngu n khác nhau cho nhi u đ i t ng s d ng. S khác ượ
1
bi t gi a c n i dung thông tin s đ c xác đ nh qua c ng c nh ho t đ ng ượ
c a ng i ng (user-specific context). ườ
Xu t b n thông tin( Content syndication) : Thu th p thông tin t nhi u ngu n
khác nhau, cung c p cho ng i dùng thông qua các ph ng pháp ho c giao th c ườ ươ
(protocol) m t cách thích h p. kh năng xu t b n thông tin v i các đ nh
d ng đã đ c quy chu n. Ngi ra, các tiêu chu n d a trên XML cũng ph i ượ
đ c áp d ng đ qu n tr và hi n th n i dung m t cách th ng nh t, xun su tượ
trong quá trình xu t b n thông tin.
H tr nhi u i tr ng hi n th thông tin (Multidevice support)ườ : Portal ph i
kh năng v n nh đa n n đa ph ng ti n. Đ truy xu t vào portal ng i ươ ườ
ng th s d ng nhi u lo i thi t b nh nhi u trình duy t khác nhau ế ư
Kh năng đăng nh p m t l n : Đâym t nh năng r t quan tr ng. Portal s
l y thông tin v ng i s d ng t c th m c nh ườ ư ư LDAP (Lightweight
Directory Access Protocol), DNS (Domain Name System) ho c AD (Active
Directory).
Qu n tr portal (Portal administration) : Xác đ nh cách th c hi n th thông tin
cho ng i dùng cu i. Cho phép thi t l p các giao di n ng i dùng v i c chiườ ế ườ
ti t đ ho , ng i qu n tr ph i đ nh nghĩa đ c các thành ph n thông tin, cế ườ ượ
nh t ng c v i ng i s d ng cu i, đ nh nghĩa nhóm ng i dùng cùng v iươ ườ ườ
các quy n truy c p và s d ng thông tin kc nhau.
Qu n tr ng i dùng (Portal user management) ườ : Cung c p c kh năng qu n
tr ng i dùng cu i y vào đ i t ng s d ng c a portal. Ng i s d ng ườ ượ ườ
th t đăng ký thành viên t i m t c ng thông tin công c ng ho c đ c ng i ượ ườ
qu n tr t o tài kho n và n quy n s d ng thích h p.
N u h th ng ch th a mãn ế t i đa năm tính năng đã nêu trên thì đó ch m t ng
d ng web ho c ph n m n qu n tr n i dung ch không ph i gi i pháp portal.
N u h th ng không th a n tính năng ế H tr nhi u môi tr ng hi n th thông ườ
tin (Multidevice support) nh ng l i th a n t t c các tính năng n l i thì hư
th ng đó v n đ c xem gi i pháp. ượ
So sánh Portal và Web truy n th ng .
Nh ng u đi m n i b t c a Portal so v i WebSite truy n th ng là: ư
Kh năng nhân hóa cao. Ví d : Giao di n portal m t s ch c năng
không c n thi t v i ng i dùng thì h th b đi, kh ng thay đ i cách ế ườ
hi n th c a portal ho c c a t ng porlet.
Kh năng đăng nh p m t l n v i t t c c tài nguyên liên k t v i portal. ế
Ng i dùng có th truy c p tng tin t nhi u thi t b khác nhau.ườ ế
Ng i pt tri n có th d a trên c chu n có s n đ tích h p công c m i.ườ
2
.1.2. Gi i thi u v Liferay.
.1.2.1 Gi i thi u.
Hin nay, vi c xây d ng c c ng đi n t trên n n t n portal khá đa d ng Vi t
Nam. d y ban nhân dân huy n Thanh Hóa ( http://www.thanhhoa.gov.vn).
Liferay phù h p đ y d ng và tri n khai C ng đi n t cho c đ n v t nh thành, ơ
b ngành, các t ch c, doanh nghi p, v.v
Đ n th i đi m tháng 06/2009 thì phn b n m i nh t c a Liferay là 5.2.3. ế
Liferay Portal Enterprise Edition: phiên b n th ng m i đ c h tr ươ ượ
nhi u tính năng.
Liferay Portal Standard Edition: Là phiên b n mi n phí v i cácnh năng m i
nh t và h tr thông qua các ho t đ ng c ng đ ng.
Liferay Portal đ a ra các ch c năng cùng h u ích v i trên 60 ng d ng theoư
chu n JSR-168. Danh m c ng d ng bao g m: Qu n tr , qu n d li u, c ng
c, c ng đ ng, gi i trí, công c nhân, công c mua s m, công c ng i phát ườ
tri n. Liferay đ c phát tri n b ng ngôn ng l p trình Java trên n n t n J2EE ượ
Web 2.0. Liferay t ng thích v i 12 h qu n tr c s d li u: Apache, Derby, IBMươ ơ
DB2, Firebird, Hypersonic, Interbase, JDataBase, MySQL, Oracle, PostgresSQL,
SAP, SQL Server, Sybase. Cho phép ho t đ ng trên các h đi u hành nh Windows; ư
Linux: CentOS, RHES, SUSE, Ubuntu,v.v..; Unix: AIX, HP-UX, Mac OS X,
Solaris,v.v... Các công ngh đ c s d ng trong Liferay bao g m ượ : Apache
ServiceMix, Ehcache, Hibernate, ICEfaces, Java J2EE/JEE, jBPM, JGroups, jQuery
JavaScript Framework, Lucene, MuleSource ESB, PHP, Ruby, Seam, Spring & AOP,
Struts & Tiles, Tapestry, Velocity. c tiêu chu n c a Liferay hi n nay có: AJAX,
iCalendar & Microformat, JSR-168, JSR-127, JSR-170, JSR-286 (Portlet 2.0), JSF-
314 (JSF 2.0), OpenSearch. i tr ng m v i h tr c a web service g m có:ườ
JSON, Hessian, Burlap, REST, RMI, WSRP, WebDAV. Liferay h tr cho 22 ngôn
ng v i nh ng b n d ch m c đ nh.
3
Liferay Portal c ng thông tin cho phép ng i s d ng kéo th các ng d ng đ ườ
s p x p phù h p v i s thích c a ng i s d ng. T t c c trang c a Liferay ế ườ
Portal đ u đ c th c hi n theo chu n CSS đ đ n gi n hóa vi c phát tri n giao ượ ơ
di n. S d ng m t trong nh ng hi u ng giao di n s n đ thay đ i b ngoài
c a c ng thông tin không ph i thông qua b t kỳ thao tác ch nh s a ngu n
ph c t p nào. Liferay cho phép t o và ch h p giao di n vào h th ng. M i cá nhân
trong c ng đ ng đ c cung c p c trang cá nhân. Ng i s d ng có th thi t k ượ ư ế ế
trang riêng c a theo s thích. H th ng qu n lí quy n s d ng c ng d ng trong
Liferay ch t ch , đ c chia làm nhi u c p đ qu n lí. Trong quá trình s d ng ta ượ
cũng có th đ nh nghĩa ra h th ng ng i dùng cho h th ng c a mình. ườ
T phiên b n 5.0, Liferay đã b t đ u h tr chu n JSR-286. Ngi ra Liferay n
h tr các JSP tag lib và nhi u class ti n ích khác trong nh ng package khác nhau.
Khi s d ng các package ti n ích này ta có th d ng phát tri n portal hay portlet.
Nh ng các portlet không còn tuân theo chu n JSR-168. Liferay cũng cho phép thư
thêm c ng d ng web vi t b ng Struct, JSF, v.v… vào Liferay. ế
.1.2.2 H ng d n Vi t-hóa Liferayướ .
Bước 1: Tìm t p tin Language_vi.properties, Language_vi.properties.native trong
portal-impl/src/content/
B c 2: ướ Chuy n đ i nh ng t sang ti ng Vi t cho phù h p. ế
B c ướ 3 : Deploy.
ng công c Ant ,ch n Add Buildfiles, ch n file build.xml c a Liferay
source. Lúcy ta c a s Ant s có 2 th m c nh sau: Portal, portal_impl ư ư
Ch n portal_impl r i nh n vào build-lang. Nh n đ c thông báo nh sau: ượ ư
BUILD SUCCESSFUL.
Sau đó nh n o deploy. N u thành ng s nh n đ c thông o nh sau: ế ượ ư
BUILD SUCCESSFUL thì vi c vi t hóa Liferay đã thành công.
.1.2.3 T o theme m i cho Liferay .
ch d dàng nh t đ t o theme là l y m t theme m m u sau đó s a đ i c t p
tin .css sao cho phù h p v i nhu c u s d ng.Theme có th thêm vào Liferay b ng
hai cách.
.1.2.3.1 Thêm t p tin th m c ư
Theme đ c thêm vào ượ Liferay b ng cách chép m t c u trúc th m c tuân theo quy ư
đ nh. .M t theme th ng có c u trúc th m c sao đây: ườ ư
4
Hình 1 - T o theme m i cho Liferay - C u trúc th m c theme ư
Css: Ch a nh ng t p tin css, nhi m v đ nh ki u hi n th cho c thành ph n
c a h th ng FIT portal.
Images: Ch a các image c a theme, đ c dùng ho c tham chi u b i nh ng ượ ế
template.
Javascript: Ch a t p tin js v i nhi m v giúp loadc porlet lên portal .
Templates: Ch a nh ng template v cái nn t ng quan c a porlet, popup.
WEB-INF: T p tin Liferay-look-and-feel.xml trong th m c này c d ng đăngư
theme cho Liferay.
.1.2.3.2 Đóng gói theme thành file war.
Ta có th đóng gói m t theme hay m t t p các themes vào trong m t t p tin WAR.
T p tin y có th đ c deploy đ i đ t trong Liferay. T p h p c t p tin đ c ượ ượ
đóng gói tn theo quy lu t nh cách t o theme đã trình bày trên. ư
Đ t o thành m t t p tin WAR, ta ng l nh JAR cho tn th m c. Ví d ư :
Ch y l nh sau trong c a s cmd: C:\CreateTheme\greentheme> jar cvf
greentheme.war *.*
.1.2.4 Chuy n 1 ng d ng web thành portlet.
.1.2.4.1 Đ t v n đ .
Vi c phát tri n m t portlet t đ u đ n cu i theo chu n JSR-168 đ ch h p vào ế
portal không ph i m t v n đ ph c t p. Nh ng n u b n m t ng d ng web ư ế
đã phát tri n tr c đó, nay mu n tích h p o portal thì nh th nào? Khi đó b n ướ ư ế
c n nghĩ đ n portals bridges. ế
.1.2.4.2c portals bridges.
Trên trang web http://portals.apache.org/bridges/download.html c a Apache, h
tr m t s bridge chuy n thành các portlet:
JSF portlet
5