1
MỤC LỤC
Trang bìa phụ
Lời cam đoan
MỤC LỤC..................................................................................................................................1
MỞ ĐẦU....................................................................................................................................4
1. Đặt vấn đề......................................................................................................................4
2. Mục tiêu của khóa luận..................................................................................................5
3. Nội dung của khóa luận..................................................................................................5
4. Phương pháp tiếp cận....................................................................................................6
CHƯƠNG 1................................................................................................................................7
CỔNG THÔNG TIN ĐIỆN TỬ (PORTAL).............................................................................7
1.1. Khái niệm ...................................................................................................................7
1.2. Đặc điểm chính của Cổng thơng tin điện tử...............................................................7
1.2.1. Cá nhân hóa.........................................................................................................7
1.2.2. Xác thực hóa.........................................................................................................7
1.2.3. Tập hợp nội dung.................................................................................................8
1.3. Đặc điểm khác của Cổng thông tin điện tử.................................................................8
1.3.1. Xuất bản thông tin (Content syndication).............................................................8
1.3.2. Hỗ trợ nhiều môi trường hiển thị thông tin (Multidevice support)........................9
1.3.3. Quản trị Cổng thông tin điện tử (Portal administration).......................................9
1.3.4. Quản trị người dùng (Portal user management): ................................................9
1.4. Ứng dụng của Cổng thông tin điện tử......................................................................10
1.5. Phân loại Cổng thông tin điện tử..............................................................................12
1.6. Lợi ích của Cổng thơng tin điện tử............................................................................12
1.7. Xây dựng Cổng thơng tin điện tử..............................................................................13
Tóm lược nội dung Chương 1..........................................................................................16
CHƯƠNG 2..............................................................................................................................17
LIFERAY PORTAL - CỔNG THÔNG TIN ĐIỆN TỬ
MÃ NGUỒN MỞ.....................................................................................................................17
2.1. Khái niệm ..................................................................................................................17
2.2. Thuận lợi của Liferay portal......................................................................................17
2.2.1. Về công nghệ......................................................................................................17
2.2.2. Về triển khai và sử dụng trên hệ thống..............................................................18
2
2.2.3. Tiện ích của Liferay portal..................................................................................18
2.3. Triển khai Liferay portal ............................................................................................20
2.4. NetBeans IDE và tích hợp Liferay portal vào NetBeans IDE...................................20
2.4.1. NetBeans IDE.....................................................................................................20
2.4.2. Tích hợp Liferay portal vào NetBeans IDE........................................................21
2.5. Portlet........................................................................................................................25
2.5.1. Khái niệm............................................................................................................25
2.5.2. Cấu trúc của Portlet............................................................................................25
2.5.3. Cách tạo portlet dùng NetBeans IDE.................................................................28
2.6. Liferay portal với môi trường làm việc cộng tác.......................................................28
2.6.1. User (Người dùng)..............................................................................................30
2.6.2. User Role (Vai trò của người dùng)...................................................................31
2.6.3. User Group (Nhóm người dùng)........................................................................32
2.6.4. Organization (Tổ chức).......................................................................................32
2.6.5. Community (Cộng đồng)....................................................................................33
2.6.6. Shared Calendar (Chia sẻ lịch biểu).................................................................33
2.6.7. Document Management (Quản lý tài liệu).........................................................34
2.6.8. Workflow (Luồng công việc)...............................................................................36
2.6.9. Poll (Thăm dò ý kiến)..........................................................................................39
2.6.10. Message Board (Bảng tin)................................................................................40
2.6.11. Wiki...................................................................................................................42
2.6.12. Một vài tính năng khác.....................................................................................44
Tóm lược nội dung Chương 2..........................................................................................46
CHƯƠNG 3..............................................................................................................................47
XÂY DỰNG ỨNG DỤNG “MÔI TRƯỜNG LÀM VIỆC CỘNG TÁC CHO CÁC PHÒNG
BAN, ĐƠN VỊ”........................................................................................................................47
3.1. Nhu cầu làm việc cộng tác giữa các Phịng ban, đơn vị .........................................47
3.2. Cơng việc cộng tác thường gặp giữa các Phòng ban, đơn vị .................................48
3.2.1. Soạn chung tài liệu, văn bản..............................................................................48
3.2.2. Phê duyệt đơn từ, đề xuất..................................................................................50
3.2.3. Chia sẻ lịch công tác, sự kiện............................................................................54
3.2.4. Lấy ý kiến thăm dị..............................................................................................57
3.2.5. Bảng tin, thơng báo, hoạt động..........................................................................59
3.3. Giao diện môi trường làm việc cộng tác trong các Phịng ban, đơn vị....................60
Tóm lược nội dung Chương 3..........................................................................................62
3
KẾT LUẬN...............................................................................................................................63
• Đánh giá kết quả nghiên cứu........................................................................................63
• Định hướng phát triển...................................................................................................63
TÀI LIỆU THAM KHẢO........................................................................................................65
4
MỞ ĐẦU
1. Đặt vấn đề
Ngày nay với sự phát triển không ngừng của công nghệ thông tin, đặc
biệt là các ứng dụng của công nghệ web 2.0 đã đưa thông tin đến gần và
nhanh hơn đối với người sử dụng. Tuy nhiên, cơng nghệ web 2.0 vẫn cịn khá
đơn giản, chưa đáp ứng được đầy đủ yêu cầu ngày càng cao của người sử
dụng như: Tính cá nhân hóa, tập hợp nội dung, bảo mật, phân quyền các dịch
vụ, các liên kết tới những thành phần trong và ngoài hệ thống,… Những hạn
chế của web 2.0 là lý do tất yếu dẫn đến sự ra đời của công nghệ mới mà có
khả năng đáp ứng được đầy đủ những yêu cầu trên. Cổng thơng tin điện tử
(portal) chính là cái mà người dùng cần, đây được coi là công nghệ của tương
lai sau thời kì của web 2.0 hiện nay. Có nhiều cơng nghệ xây dựng Cổng
thơng tin điện tử khác nhau nhưng công nghệ Liferay portal là một trong
những công nghệ Cổng thông tin điện tử mã nguồn mở hàng đầu thế giới viết
bằng Java với giao diện thân thiện, dễ sử dụng và đặc biệt là có khả năng đưa
ra các phương án để giải quyết những yêu cầu của bài toán mà người dùng
cần. Hiện nay, trên thế giới công nghệ Liferay portal đã được triển khai, ứng
dụng rất mạnh mẽ với quy mô lớn và đã gặt hái được nhiều thành công, tiêu
biểu như Yahoo, Google, MSN,… Tuy nhiên Liferay portal vẫn còn khá mới
mẻ ở Việt Nam, nó được ứng dụng q ít trong thực tiễn so với những sức
mạnh tiềm tàng mà nó có thể làm được. Sự quan tâm của các nhà phát triển
cũng như của người dùng vẫn còn chưa đáng kể khiến cho Liferay portal trở
nên lạ lẫm, chưa gây được nhiều sự chú ý, quan tâm dù rằng nó ở gần ngay
quanh ta.
Chính vì lý do đó em chọn đề tài: “Tìm hiểu và ứng dụng cơng nghệ
Liferay portal để xây dựng môi trường làm việc cộng tác cho các Phòng ban,
đơn vị” với mong muốn phần nào giúp cho mọi người có thể biết đến nhiều
5
hơn về Liferay portal cũng như các thế mạnh của nó, đồng thời xây dựng
được một mơi trường làm việc cộng tác từ Liferay portal sử dụng cho các
Phòng ban, đơn vị trong ngành Cơng an.
2. Mục tiêu của khóa luận
Tìm hiểu từ khái qt đến cụ thể những tính năng nổi bật nhất của công
nghệ Liferay portal để từ đó ứng dụng cơng nghệ này vào xây dựng mơi
trường làm việc cộng tác giúp cho các cán bộ, chiến sĩ, nhân viên dễ dàng trao
đổi tài liệu, phối hợp thực hiện các cơng việc, lấy ý kiến thăm dị về một quy
định, chính sách,... Qua đó nâng cao hiệu quả công việc, giảm bớt thời gian
xử lý các công việc cũng như thủ tục không cần thiết.
3. Nội dung của khóa luận
Nội dung bài khóa luận này là giới thiệu một cách tổng quan về Cổng
thông tin điện tử, cơng nghệ Liferay portal và trình bày cụ thể những tính
năng hữu dụng của Liferay portal đối với việc xây dựng một môi trường làm
việc cộng tác khi được triển khai trên hệ thống.
Phần cuối của bài khóa luận em cũng giới thiệu một ứng dụng nhỏ sau
khi tìm hiểu công nghệ Liferay portal để xây dựng môi trường làm việc cộng
tác cho các Phòng ban, đơn vị trong ngành Công an như: Soạn chung tài liệu,
văn bản; Phê duyệt đơn từ, đề xuất; Chia sẻ lịch công tác, sự kiện; Lấy ý kiến
thăm dị; Bảng tin, thơng báo, hoạt động.
Trên cơ sở đó, nội dung của bài khóa luận này gồm có 3 chương sau:
- Chương 1: Cổng thơng tin điện tử (portal).
- Chương 2: Liferay portal – Cổng thông tin điện tử mã nguồn mở.
- Chương 3: Xây dựng ứng dụng “Môi trường làm việc cộng tác cho
các Phòng ban, đơn vị”.
6
4. Phương pháp tiếp cận
Sưu tập và nghiên cứu tài liệu, đánh giá – xem xét – lựa chọn những tính
năng đáp ứng được các yêu cầu của ứng dụng, xây dựng ứng dụng.
Với hướng đi đó bước đầu khóa luận đã tìm hiểu được khá nhiều kiến
thức và xây dựng được một chương trình ứng dụng cho kết quả tốt, phần nào
chứng tỏ phương pháp tiếp cận là đúng đắn và có hiệu quả.
7
CHƯƠNG 1
CỔNG THƠNG TIN ĐIỆN TỬ (PORTAL)
1.1. Khái niệm
Cổng thơng tin điện tử hay cịn gọi là “Website thơng minh” là bước phát
triển kế tiếp của công nghệ web, sử dụng một hệ thống định danh và xác thực
người dùng đăng nhập, từ đó cung cấp một giao diện web để người dùng dễ
dàng truy cập, khai thác thông tin và dịch vụ.
Cổng thơng tin điện tử cịn là một ứng dụng web cơ bản cung cấp các
khả năng cá nhân hóa (personalization), xác thực hóa (authentication) và tập
hợp nội dung (content aggregation) về Cổng thông tin điện tử.
1.2. Đặc điểm chính của Cổng thơng tin điện tử
1.2.1. Cá nhân hóa
Cho phép người dùng quyết định ứng dụng nào sẽ được khởi tạo để hiển
thị lên trang Cổng thông tin điện tử, cấu hình lại trang Cổng thơng tin điện tử
vào bất cứ lúc nào bằng cách thêm hoặc gỡ bỏ những ứng dụng trên đó. Tính
năng này dựa trên hoạt động thu thập thông tin về người dùng và cộng đồng
người dùng, từ đó cung cấp các thơng tin chính xác tại thời điểm được u
cầu.
1.2.2. Xác thực hóa
Cổng thông tin điện tử cung cấp cơ chế đăng nhập một cửa (Single signon), tiến hành xác thực người dùng một lần và áp dụng kết quả xác thực
này với tất cả các ứng dụng khác hiển thị trên Cổng thông tin điện tử. Cụ
thể là, cho phép các dịch vụ xuất bản thông tin hoặc lấy thông tin của
người dùng đang hoạt động mà không bắt buộc người dùng đó phải đăng
nhập lại mỗi khi có yêu cầu. Đây là một tính năng rất quan trọng giúp rút
8
ngắn thời gian xác thực, truy xuất cũng như bảo mật thơng tin. Bởi vì, số
lượng các ứng dụng và dịch vụ trong Cổng thông tin điện tử ngày càng
tăng lên một cách nhanh chóng do nhu cầu từ người dùng ngày càng
tăng, vì vậy tất yếu sẽ có các nhu cầu về xác thực hoặc truy xuất thông
tin của người dùng.
1.2.3. Tập hợp nội dung
Cổng thông tin điện tử lấy nội dung từ các website tĩnh hay website động
về làm nội dung của nó. Cho phép xâ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 khác nhau. Sự khác biệt giữa
các nội dung thông tin sẽ được xác định qua ngữ cảnh hoạt động của người
dùng (user-specific context). Ví dụ, đối với từng đối tượng người sử dụng sau
khi vượt qua quá trình xác thực thì những thơng tin về họ (cung cấp trong q
trình cá nhân hóa) sẽ được dùng làm cơ sở để Cổng thông tin trả về nội dung
hoặc thơng tin họ đã đăng kí.
1.3. Đặc điểm khác của Cổng thơng tin điện tử
Ngồi 3 đặc điểm cơ bản nêu trên, Cổng thơng tin điện tử cịn có một vài
đặc điểm riêng lẻ khác mà tùy từng loại Cổng thơng tin điện tử có hay khơng
có. Những đặc điểm này thường là không bắt buộc, bao gồm các đặc điểm sau
đây:
1.3.1. 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) phù hợp. Một hệ thống
xuất bản thông tin chuyên nghiệp phải có khả năng xuất bản thơng tin với các
định dạng khác nhau đã được quy chuẩn, ví dụ như RDF (Resource
Description Format), RSS (Really Simple Syndication), NITF (News Industry
Text Format) và NewsXML. Ngoài ra, các tiêu chuẩn dựa trên XML cũng
9
phải được áp dụng để quản trị và hiển thị nội dung một cách thống nhất,
xuyên suốt trong quá trình xuất bản thông tin. Các tiêu chuẩn dựa trên XML
này hỗ trợ đưa ra giải pháp nhanh nhất để khai thác và sử dụng thông tin trên
các website khác nhau thơng qua q trình thu thập và bóc tách thơng tin với
các định dạng đã được quy chuẩn.
1.3.2. Hỗ trợ nhiều môi trường hiển thị thông tin (Multidevice support)
Cho phép hiển thị cùng một nội dung thông tin trên nhiều loại thiết bị
khác nhau như: Màn hình máy tính (PC), thiết bị di động (Mobile phone,
Wireless phone, PDA), sử dụng để in hay cho bản fax…. một cách tự động
bằng cách xác định thiết bị hiển thị thông qua các thuộc tính khác nhau. Ví
dụ: cùng một nội dung đó, khi hiển thị trên màn hình máy tính thì sử dụng
HTML, nhưng khi hệ thống xác định được thiết hiển thị là Smartphone, PDA
hay Mobilephone hệ thống sẽ loại bỏ hình ảnh có trong nội dung và tự động
chuyển nội dung đó sang định dạng WML (Wireless Markup Language) để
phù hợp cho việc hiển thị trên màn hình của thiết bị di động.
1.3.3. Quản trị Cổng thông tin điện tử (Portal administration)
Xác định cách thức hiển thị thông tin cho người dùng cuối. Tính năng
này khơng chỉ đơn giản là thiết lập giao diện người dùng với các chi tiết đồ
hoạ (look-and-feel) mà còn giúp người quản trị định nghĩa được thành phần
thông tin, kênh tương tác với người sử dụng cuối, định nghĩa nhóm người
dùng cùng với quyền truy cập và sử dụng thông tin khác nhau.
1.3.4. Quản trị người dùng (Portal user management):
Là khả năng quản trị người dùng cuối, tùy thuộc vào đối tượng sử dụng
của Cổng thơng tin điện tử. Tại đây, người sử dụng có thể tự đăng ký trở
thành thành viên tại một Cổng thông tin công cộng (như Yahoo, MSN,
iGoogle) hoặc được người quản trị tạo lập và gán quyền sử dụng tương ứng
đối với các Cổng thông tin doanh nghiệp. Mặt khác, tùy vào từng kiểu Cổng
10
thơng tin điện tử mà số lượng thành viên có thể từ vài nghìn tới hàng triệu.
Hiện tại phương pháp phân quyền sử dụng dựa trên vai trò (Role-based) được
sử dụng như một tiêu chuẩn để cung cấp thông tin phân quyền sử dụng cho
các đối tượng khác nhau trong Cổng thông tin điện tử cũng như ứng dụng
web.
1.4. Ứng dụng của Cổng thông tin điện tử
Hiện nay trên thế giới Cổng thông tin điện tử đã được áp dụng khá rộng
rãi và phổ biến. Một số rất gần gũi mà chúng ta thường dùng hàng ngày trong
số đó phải kể đến một vài Cổng thông tin điện tử nổi tiếng như:
iGoogle trên Google.com; Yahoo.com
Hình 1.1 Cổng thơng tin điện tử iGoogle của hãng Google.
Cùng với iGoogle, Yahoo cũng là một loại Cổng thông tin công cộng thu
hút một lượng lớn người dùng truy cập trên toàn cầu. Đây đều là những Cổng
11
thơng tin hồn chỉnh nhất mang đầy đủ các đặc điểm đã nêu bên trên; Đặc biệt
những đặc điểm chính: Cá nhân hóa, xác thực hóa và tập hợp nội dung biểu
hiện rất rõ ràng, giao diện đẹp mắt, thân thiện, dễ sử dụng.
Hình 1.2 Cổng thơng tin điện tử của hãng Yahoo
Và một số Cổng thông tin điện tử khác khá nổi tiếng như: Netscape, AOL,
MSN, Lycos, AltaVista, Excite,…
Ở Việt Nam, Cổng thông tin điện tử cũng đang là hệ thống được nhiều tổ
chức, cơ quan và đặc biệt là doanh nghiệp muốn đưa vào khai thác thay cho
các website giao dịch thông thường. Dưới đây là một vài ví dụ về Cổng thơng
tin điện tử ở Việt nam:
- Cổng thơng tin điện tử Chính phủ />- Cổng thơng tin điện tử của Bộ Công an
- Cổng thông tin điện tử Bộ Xây dựng www.moc.gov.vn/
12
- Cổng thông tin điện tử Bộ Tư Pháp />- Cổng thông tin điện tử Bộ Y tế
- Cổng giao tiếp điện tử TP Hà nội
1.5. Phân loại Cổng thơng tin điện tử
Cổng thơng tin điện tử có nhiều loại, tuy nhiên thì có 6 loại thơng dụng
thường dùng, đó là:
- Cổng thơng tin cá nhân.
- Cổng thơng tin của các Bộ, Ban, Ngành, các trường Đại học, Cao đẳng.
- Cổng thông tin của các tỉnh, địa phương.
- Cổng thơng tin của Chính phủ.
- Cổng thơng tin của các Tập đồn, doanh nghiệp, cơng cộng.
- Cổng thơng tin Thể thao.
1.6. Lợi ích của Cổng thơng tin điện tử
Nhìn chung, một Cổng thông tin điện tử là ứng dụng web ứng dụng các
hệ thống và các quy trình với nhau để tạo ra một vùng làm việc cộng tác tập
trung có chiều sâu. Cổng thơng tin điện tử tích hợp những công nghệ mới nhất
để xây dựng vùng làm việc cá nhân hoá và cộng đồng để tăng năng suất làm
việc cho người sử dụng. Cổng thông tin điện tử được xây dựng để kết hợp các
mạng nội bộ - intranets, mạng bên ngoài -extranets, cộng đồng, trang web, và
dự án... Tùy thuộc vào loại nhu cầu nghiệp vụ và Cổng thơng tin điện tử mà
mọi người dùng có thể để đạt được một số lợi ích từ việc sử dụng Cổng thông
tin điện tử ở bất kỳ môi trường nào. Một số lợi ích trong đó là:
- Hiệu quả cung cấp thông tin cho các đối tượng.
- Tăng năng suất cho người sử dụng đầu cuối.
- Cung cấp những tính năng tùy chỉnh và phát triển của các công cụ.
- Tăng cường khả năng tương tác giữa khách hàng với nhân viên, giữa
nhân viên với nhân viên trong cùng cơ quan, đơn vị.
13
- Cá nhân hố mơi trường làm việc cho người sử dụng cuối cùng.
- Tích hợp các ứng dụng bên ngoài và dịch vụ bởi các portlet.
1.7. Xây dựng Cổng thơng tin điện tử
Chúng ta đã tìm hiểu khá cụ thể về Cổng thông tin điện tử như : Cổng
thông tin điện tử là gì, đặc điểm của Cổng thơng tin điện tử, phân loại Cổng
thông tin điện tử,... Và một câu hỏi đặt ra lúc này là: “Làm thế nào để xây
dựng nên Cổng thông tin điện tử?”.
Câu trả lời là có rất nhiều cách để xây dựng Cổng thơng tin điện tử.
Chúng ta có thể tự mình xây dựng Cổng thông tin điện tử đơn giản bằng ngôn
ngữ Java, Perl, Python,… Tuy nhiên, đối với Cổng thông tin điện tử phức tạp
và đặc thù cơng việc thì người ta thường sử dụng các công cụ hỗ trợ xây dựng
Cổng thông tin điện tử (portal building toolkits) bao gồm 2 loại chính sau đây:
-
Cơng cụ hỗ trợ xây dựng mất phí, phải mua bản quyền sử dụng
(Commercial Open Source and Proprietary) như:
• Sharepoint của Microsoft.
• WebSphere của IBM.
• Zope của Python.
• Oracle portal của Oracle.
- Cơng cụ hỗ trợ xây dựng miễn phí mã nguồn mở (Free / Open Source)
như:
• Alfresco ECM ().
• Apache Pluto ( />• Apache Jetspeed-2 ( />• eXo Platform ().
• Hippo Portal 2 ( />• InfoGlue ().
• Jahia ().
14
• JBoss GateIn ( />• Liferay Portal ().
• OpenPortal ( />• Sakai ().
• uPortal ( />Rõ ràng, việc sử dụng cơng cụ hỗ trợ luôn luôn là phương án tốt nhất
giúp cho người dùng xây dựng Cổng thơng tin điện tử có tính phức tạp hoặc
đặc thù cơng việc. Nhưng, hiện nay có rất nhiều công cụ hỗ trợ, người sử dụng
nên chọn công cụ nào cho phù hợp và đạt hiệu quả cao?
Để trả lời cho câu hỏi này, chúng ta sẽ cùng xem kết quả thăm dị đánh
giá về các cơng cụ hỗ trợ xây dựng Cổng thông tin điện tử vào tháng 6/2011
của website: (website chuyên đưa ra
đánh giá về : Mã nguồn mở, bảo mật, độ tin cậy và tính tiện lợi của các cơng
nghệ) với các tiêu chí và thang điểm như sau:
- Tiêu chí:
• 1. Content Management (Quản trị nội dung)
• 2. Collaboration (Cộng tác)
• 3. Social (Mạng xã hội)
• 4. Security (Bảo mật)
• 5. Integration Platform (Tích hợp Platform)
• 6. Extendibility and easy Development (Mở rộng và Phát triển)
• 7. Ready to Mobility (Tính lưu động)
• 8. Community (user forums, documentation, wiki, etc.) (Cộng đồng)
• 9. License type (Free Open Source, Commercial Open Source,
Proprietary) (Kiểu đăng kí bản quyền).
- Thang điểm:
• Not have: 0 (Khơng đáp ứng yêu được)
15
• Low:
1 (Yếu)
• Medium:
2 (Trung bình)
• Enough:
3 (Đủ dùng)
• Good:
4 (Tốt)
• Excellent: 5 (Tuyệt vời)
Và kết quả cuối cùng như sau:
Hình 1.3 Kết quả đánh giá các cơng cụ hỗ trợ xây dựng Cổng thông tin điện tử
(Nguồn : />
16
Nhìn vào
hình 1.3
ta thấy Liferay Portal đứng ở vị trí đầu tiên so với
những công cụ hỗ trợ khác. Liferay Portal đáp ứng rất tốt các tiêu chí đưa ra.
Với Liferay portal người dùng có thể xây dựng được bất kì Cổng thơng
tin điện tử nào như: social network, e-learning portal, e-commerce portals,…
dành cho cả doanh nghiệp lẫn người dùng thông thường. Nhưng điều đặc biệt
nhất Liferay portal là mã nguồn mở và miễn phí sử dụng.
Trong đề tài khóa luận này, em lựa chọn Liferay portal để xây dựng
“Môi trường làm việc cộng tác cho các Phòng ban, đơn vị”.
Tóm lược nội dung Chương 1
Chương 1 giới thiệu một cách khái quát nhất về Cổng thông tin điện tử;
những đặc điểm, phân loại và tình hình ứng dụng Cổng thông tin điện tử.
Chương này cũng đề cập phương pháp xây dựng Cổng thơng tin điện tử,
trong đó thơng dụng nhất là dùng công cụ hỗ trợ. Ở cuối chương này đã đưa
ra kết quả so sánh giữa các công cụ hỗ trợ xây dựng Cổng thông tin điện tử
phổ biến hiện nay với nhiều tiêu chí đánh giá khắt khe từ phía người sử dụng.
Kết quả, Liferay portal xếp vị trí đầu tiên; Qua đó thêm một lần nữa khẳng
định Liferay portal là Cổng thông tin điện tử mã nguồn mở điển hình nhất hiện
nay, là sự lựa chọn hàng đầu dành cho các Cơ quan, tổ chức, doanh nghiệp và
cá nhân.
Nắm vững khái niệm và đặc điểm của Cổng thông tin điện tử sẽ là cơ sở
vững chắc để tiến tới tìm hiểu hiệu quả nội dung Chương 2:“Liferay portal Cổng thông tin điện tử mã nguồn mở”.
17
CHƯƠNG 2
LIFERAY PORTAL - CỔNG THÔNG TIN ĐIỆN TỬ
MÃ NGUỒN MỞ
2.1. Khái niệm
Liferay portal là một Cổng thông tin điện tử mã nguồn mở cơ bản được
viết bằng Java, cung cấp những tính năng khơng giới hạn về số lượng cũng
như sự tiện dụng và hiệu quả đến cho người dùng, giúp cho người dùng có thể
triển khai website mình mong muốn trong khoảng thời gian nhanh nhất có
thể. Là giải pháp Cổng thông tin điện tử cho cả các cơ quan, doanh nghiệp, tổ
chức, cá nhân và cộng đồng.
2.2. Thuận lợi của Liferay portal
2.2.1. Về công nghệ
- Chạy trên tất cả các hệ thống máy chủ, Servlet container, cơ sở dữ liệu và
hệ điều hành với hơn 700 khối thực thi.
- Sử dụng các phiên bản mới nhất của Java, J2EE, và công nghệ web 2.0.
-
Sử dụng mã nguồn mở OSA (OpenSource Alliance).
JSR-168/JSR-286 compliant (Java Specification Requests).
Với trên 60 portlet tiện ích.
Có khả năng thiết kế, dàn trang theo sở thích riêng của mỗi người sử
dụng.
- Được tích hợp bộ Cộng tác (Collaboration) và Hệ thống quản lý dữ liệu
(CMS).
- Đồng bộ đầy đủ giao thức truy cập cấu trúc thư mục LDAP (Lightweight
Directory Access Protocol).
- Hỗ trợ bảo mật với cơ chế đăng nhập một cửa Single Sign-On (SSO)
trong xác thực hóa, cũng như tập hợp nội dung.
18
2.2.2. Về triển khai và sử dụng trên hệ thống
Liferay portal là một trong những framework Cổng thơng tin hồn chỉnh
nhất trên thị trường (được phát triển từ năm 2000) và cung cấp những lợi ích
cơ bản như:
- Bộ cơng cụ cộng tác trực quan dành cho nhiều loại đối tượng người sử
dụng khác nhau.
- Tổ chức sắp xếp hợp lý dữ liệu và ứng dụng của người dùng, qua đó giúp
giảm bớt đáng kể thời gian truy xuất.
- Tối ưu hóa cơ sở hạ tầng Cơng nghệ thơng tin sẵn có.
- Có khả năng điều chỉnh, thích ứng với những yêu cầu thường xuyên thay
đổi của thị trường.
- Sắp xếp hiệu quả hoạt động làm việc của người dùng, giảm thiểu tối đa
sự ảnh hưởng đến cơ sở hạ tầng Cơng nghệ thơng tin có sẵn.
2.2.3. Tiện ích của Liferay portal
2.2.3.1. Giao diện
Liferay portal cung cấp một giao diện thân thiện dễ sử dụng với người
dùng, bao gồm:
- Kéo-thả, chỉnh sửa vị trí đặt cũng như cấu hình dễ dàng các ứng dụng
(portlet) trên một trang Cổng thông tin.
- Người dùng tự xây dựng hoặc tải về, và triển khai nhanh chóng các ứng
dụng tương thích với phiên bản đang sử dụng từ trang chủ Liferay.
- Look and feel (Cảm quan) - Người dùng có thể sửa đổi màu sắc, kiểu chữ
và liên kết tới các ứng dụng mà khơng cần phải có trình chỉnh sửa CSS hay
HTML.
Cơng cụ phát triển giao diện:
- Tất cả các trang trong Liferay đều sử dụng chuẩn CSS để đơn giản hóa
việc phát triển giao diện cho đội ngũ lập trình viên và nhà thiết kế.
- Quản lý hiệu ứng giao diện theo quyền sử dụng hệ thống.
- Áp dụng hiệu ứng web cho một loạt trang khác bằng việc sử dụng
Xuất/Nhâp tệp tin lưu trữ .LAR (Liferay Archives).
19
- Thư viện thiết kế Javascript của Liferay portal dựa trên jQuery với sự hỗ
trợ cho dịch vụ Web JSON giúp tạo ra giao diện thân thiện, gần gũi.
2.2.3.2. Hỗ trợ WebDAV
WebDAV là một giao thức cho phép chuyển dữ liệu, tệp tin, thư mục một
cách dễ dàng từ máy tính cá nhân lên thư mục tài ngun trên khơng gian làm
việc hay trên một site bất kỳ của người dùng. WebDAV là tập hợp các phần
mở rộng cho giao thức HTTP trợ giúp người dùng cộng tác sửa chữa và quản
lý tập trung trên máy chủ từ xa.
Một khi đã thiết lập WebDAV, máy tính sẽ xử lý tài nguyên của người
dùng giống như là trên hệ thống nội bộ bình thường. Người dùng có thể kéo
thả tệp tin, thư mục từ nguồn dữ liệu như là đang làm với Windows, Linux
hay một hệ điều hành bất kỳ.
Người sử dụng sẽ quản lý chặt chẽ hơn nội dung Cổng thông tin bằng
những quy ước hệ điều hành quen thuộc cho các tài liệu và thư mục.
2.2.3.3. Hệ thống quản lý quyền sử dụng chặt chẽ
- Kiểm tra, cung cấp các chức năng và thông tin đúng với quyền sử dụng
của từng thành viên.
- Kiểm tra quyền sử dụng có khả năng mở rộng hoặc sử dụng lại hay
không. Việc kiểm tra diễn ra thường xuyên trong Cổng thông tin và có thể áp
dụng cho từng thành phần của ứng dụng trên Cổng thông tin như nút bấm
điều khiển, cấu hình, thơng báo,...
2.2.3.4. Tích hợp Liferay portal vào IDE
- NetBeans IDE: Để giảm bớt thời gian phát triển một ứng dụng Cổng
thơng tin mới, Liferay portal được hỗ trợ tích hợp trong NetBeans IDE – một
mơi trường phát triển tích hợp rất mạnh của Java nhanh chóng trợ giúp người
lập trình xây dựng được Cổng thơng tin như ý muốn. Chi tiết các bước tích
hợp Liferay portal vào trong NetBeans IDE sẽ được trình bày ở mục 2.4.
20
- Eclipse: Liferay portal cũng hỗ trợ kết hợp với Eclipse để tạo ra những
tập tin cấu hình XML tự động và cho phép phát triển JSP/những lớp xử lý
hành động chỉ bằng một vài thao tác nhấn chuột đơn giản.
2.3. Triển khai Liferay portal
Tính linh hoạt của Liferay portal cho phép nó được triển khai theo nhiều
cách khác nhau để đáp ứng nhu cầu cụ thể của từng cơ quan, tổ chức, cá nhân
và cộng đồng. Dưới đây là một số mơ hình Liferay portal đang sử dụng:
-
Kết hợp mạng bên ngồi (-Extranet).
Mạng nội bộ cơng ty, cơ quan (-Intranet) .
Quản lý dữ liệu và công bố web.
Cộng tác giữa người dùng với nhau.
Cổng thông tin cơ sở hạ tầng.
2.4. NetBeans IDE và tích hợp Liferay portal vào NetBeans IDE
2.4.1. NetBeans IDE
NetBeans IDE là một “môi trường phát triển tích hợp“ (Integrated
Development Environment) kiểu như Visual Studio của Microsoft và được
xem là một một bộ ứng dụng “must-download” (cần phải có) dành cho các
nhà phát triển phần mềm.
NetBeans IDE hỗ trợ nhiều hệ điều hành khác nhau như Windows, Mac,
Linux, và Solaris. NetBeans bao gồm một IDE mã nguồn mở và một nền tảng
ứng dụng giúp nhà phát triển nhanh chóng tạo nên các ứng dụng dành cho
website, doanh nghiệp, cơ quan, tổ chức, ứng dụng desktop và thiết bị di động
bằng các ngơn ngữ lập trình Java, C/C++, JavaScript, Ruby, Groovy, PHP hay
một số ngôn ngữ khác trong những phiên bản mới ra của NetBeans IDE.
Phiên bản NetBeans IDE 7.0.1 cung cấp nhiều tính năng mới như
shortcut tìm kiếm trong toàn bộ IDE gọi là QuickSearch, giao diện thân thiện
hơn với người dùng, và tính năng tự động biên dịch khi lưu (Compile on
Save). Ngoài việc hỗ trợ Java mọi phiên bản (Java SE, Java EE, Java ME),
NetBeans IDE cịn là cơng cụ lý tưởng cho việc phát triển phần mềm bằng các
21
ngôn ngữ PHP, C/C++, Groovy and Grails, Ruby and Rails, Ajax và
JavaScript. Ngoài ra, từ các phiên bản 7.0 trở đi còn tăng cường hỗ trợ cho
web framework (Hibernate, Spring, JSF, JPA, Portlet, Struts, JavaServer
Faces), trình ứng dụng máy chủ GlassFish và cơ sở dữ liệu.
2.4.2. Tích hợp Liferay portal vào NetBeans IDE
2.4.2.1. Phần mềm và plug-in cần dùng
- Bộ jdk, ở đây sẽ chọn bộ jdk7u2 sử dụng cho hệ điều hành windows
32bit. Có thể tải theo đường link:
/>- Bản cài đặt NetBeans 7.0.1. Có thể tải theo đường link:
/>- Gói Liferay portal Tomcat. Có thể tải theo đường link:
/>- Liferay Server plug-in cũng như các plug-in cần thiết khác như: Generic
Portlets (JSR 168/286), Spring MVC Portlet Plug-in,… Có thể tải tồn bộ gói
plug-in trên theo đường link:
/>2.4.2.2. Các bước tích hợp Liferay portal vào NetBeans IDE
Bước 1: Cài đặt jdk
JDK(Java Development Kit) là bộ công cụ phát triển Java. Nó bao gồm
nhiều chương trình tiện ích như trình biên dịch javac (java compiler), chương
trình gỡ lỗi, appletviewer, trình phát sinh tài liệu javadoc, đóng gói dữ liệu jar
v.v... Ngồi ra cịn có JRE (Java Runtime Enviroment) mơi trường thực thi
Java. Tiến hành cài đặt jdk7u2 theo mặc định.
22
Hình 2.1 Cài đặt ban đầu và kết thúc jdk7u2
Bước 2: Cài đặt NetBeans
Tiến hành cài NetBeans như mặc định, tuy nhiên trong Runtimes ta chọn
thêm Apache Tomcat như hình bên dưới.
Hình 2.2 Cài đặt ban đầu và kết thúc NetBeans 7.0.1
Bước 3: Cài đặt Liferay portal Tomcat
Tạo một thư mục bất kì tại ổ đĩa C\: với tên tùy ý. Ở đây tạm chọn tên
thư mục là Liferay Portal 2012. Giải nén gói Liferay portal Tomcat tải được ở
bên trên vào thư mục này.
Cụ thể như hình 2.3
23
Hình 2.3 Tạo thư mục Liferay Portal 2012 và giải nén gói Liferay portal Tomcat
Bước 4: Tích hợp các plug-in vào trong NetBeans
- Tạo một thư mục có tên Portal plug-in bên trong thư mục Liferay Portal
2012 đã tạo ở bước trên.
- Giải nén gói plug-in tải được bên trên vào thư mục Portal plug-in vừa
tạo.
- Khởi động NetBeans 7.0.1. Chọn Tools\Plugins\Downloaded\Add
plugins\Chọn tồn bộ (Ctrl+A) các file có đi .nbm bên trong thư mục
Portal plug-in\Click Open\Install\Next\Tích đồng ý khi được hỏi. Chờ cài đặt.
Cụ thể như hình 2.4.
Hình 2.4 Tích hợp các plug-in vào NetBeans
- Khởi động lại NetBeans để các plug-in có hiệu lực.
Bước 5: Tích hợp Liferay Portal Server vào NetBeans IDE
24
- Sau khi khởi động lại NetBeans IDE. Nhấn tổ hợp phím Ctrl+5 để xuất
hiện cửa sổ Services.
- Chuột phải vào Servers\Add Server…\Liferay Portal Server
5.1.x/5.2.x/6.x\Next\
- Trong server type chọn Tomcat 6.x\Ở Catalina home chọn đường dẫn
đến tận thư mục Tomcat-6.0.29\OK\Next\Finish.
Hình 2.5 Tích hợp Liferay Portal Server vào NetBeans IDE
Bước 6: Kiểm tra việc tích hợp Liferay Portal Server vào NetBeans IDE
Để kiểm tra xem việc tích hợp Liferay portal vào NetBeans IDE có thành
cơng hay khơng ta làm như sau:
- Tổ hợp phím Ctrl+5\Kích đúp vào tab Servers\Chuột phải vào Liferay
Portal Server 5.1.x/5.2.x/6.x\Start. Như hình 2.6.
25
Hình 2.6 Kiểm tra việc tích hợp Liferay portal vào NetBeans IDE
- Chờ khoảng 2-3 phút, nếu thấy có một tam giác nhỏ màu xanh lá cây
xuất hiện phía trước dịng chữ Liferay Portal Server 5.1.x/5.2.x/6.x của tab
Servers thì tức là ta đã tích hợp thành cơng. Như hình 2.6.
- Mở cửa sổ trình duyệt web. Gõ dịng chữ http://localhost:8080 vào thanh url
sẽ xuất hiện màn hình welcome của Liferay.
2.5. Portlet
2.5.1. Khái niệm
Portlet là một web component được dùng để triển khai vào trong một
portlet container và tạo ra nội dung động. Về mặt công nghệ, portlet là một
class viết theo chuẩn giao diện của javax.portlet.portlet interface và được
đóng gói, triển khai thành một file .war bên trong một portlet container.
2.5.2. Cấu trúc của Portlet
Chúng ta có thể ví Cổng thông tin điện tử như một hệ điều hành mà trên
nền nó ta xây dựng rất nhiều ứng dụng nhỏ khác nhau bởi portlet. Khi đó các