1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu và triển khai portal mã nguồn mở

87 761 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 87
Dung lượng 5,03 MB

Nội dung

Các thế hệ website ra đời, cải tiến liên tục, cùng với Web Service, sự trợ giúp của công nghệ Mobile Agent - một chương trình thay mặt người dùng thực hiện công việc tìm kiếm và xử lý t

Trang 1

LỜI CẢM ƠN

Lời cảm ơn đầu tiên, em xin kính gửi lòng biết ơn chân thành đến cha mẹ

đã nuôi dưỡng và dạy bảo để em có ngày hôm nay

Xin cảm ơn quý Thầy, Cô trường Đại học Nha Trang, đặc biệt là các Thầy, Cô Khoa Công Nghệ Thông Tin đã tận tình truyền đạt những kiến thức và kinh nghiệm cho em trong suốt thời gian học tập tại trường

Em xin gửi lời chân thành cảm ơn thầy, Th.s Trần Mạnh Khang đã tận

tình hướng dẫn em trong suốt thời gian thực hiện đề tài này

Xin cảm ơn các bạn trong lớp 49THM đã chia sẻ, giúp đỡ và động viên tôi trong suốt thời gian học tập tại trường cũng như trong thời gian thực hiện đề tài

Mặc dù em đã cố gắng hoàn thành đề tài này với tất cả nỗ lực, nhưng vẫn không tránh khỏi những thiếu sót nhất định Kính mong nhận được sự chỉ bảo của quý Thầy, Cô và sự góp ý chân thành của các bạn

Kính chúc quý thầy cô mạnh khỏe, tiếp tục đạt được nhiều thắng lợi trong giảng dạy, trong nghiên cứu khoa học và trong sự nghiệp trồng người

Xin chân thành cảm ơn !

Nha Trang ngày 18 tháng 6 năm 2011 Sinh viên thực hiện

Nguyễn Trần Đức

1

Trang 2

TÓM TẮT

• Tên đề tài: Tìm hiểu và triển khai Portal mã nguồn mở

• Thời gian thực hiện:

− Ngày được giao đề tài: 10-02-2011

− Ngày hoàn tất đề tài: 20-06-2011

• Nội dung nghiên cứu:

- Tìm hiểu các khái niệm liên quan đến portal

- Các portal mã nguồn mở thông dụng hiện nay

- Tìm hiểu Hệ quản trị nội dung mã nguồn mở NukeViet

- Cách thức cài đặt một portal mã nguồn mở

- Cách thức tùy biến CMS portlet để xây dựng một trang tin cá nhân

- Cách thức tùy biến một số các portlet khác

o Môi trường cài đặt

- Hệ quản trị nội dung NukeViet

TỔNG QUAN Đặt vấn đề: Trong sự phát triển mạnh mẽ của Internet, thì các Website giữ

một vai trò đặc biệt quan trọng trong mọi lĩnh vực của đời sống nhân loại Với đam mê sáng tạo và chinh phục thế giới, công nghệ thông tin đã và đang thay

đổi từng ngày Các thế hệ website ra đời, cải tiến liên tục, cùng với Web Service, sự trợ giúp của công nghệ Mobile Agent - một chương trình thay mặt

người dùng thực hiện công việc tìm kiếm và xử lý thông tin trên Internet - khái niệm Website truyền thống được chuyển thành “Website thông minh” với

sự trợ giúp của dịch vụ Search Engine, một công cụ cho phép tìm kiếm và lọc thông tin trên cơ sở các từ khoá được xác lập bởi người dùng và dịch vụ phân

loại thông tin – Category Từ đó, thuật ngữ “Website thông minh” hay “Cổng

2

Trang 3

điện tử” - Portal được hình thành

Trong bối cảnh hội nhập kinh tế quốc tế, Việt Nam trở thành thành viên chính thức của tổ chức thương mại thế giới WTO tháng 11 năm 2006, cả dân tộc Việt Nam bước vào sân chơi lớn của thế giới Những yêu cầu về cải cách

hành chính, phát triển chính phủ điện tử, thương mại điện tử càng trở nên

cấp thiết và mang tính sống còn Ở nước ta, một số địa phương cũng rất quan

tâm phát triển công nghệ Portal như thành phố Hà Nội, thành phố Hồ Chí

Minh, Vĩnh Phúc và một số địa phương khác… Các địa phương này đã xây dựng được cổng thông tin điện tử cho riêng mình, để nó trở thành một công cụ phục vụ đắc lực trong việc quản lý, điều hành các hoạt động kinh tế, xã hội

Nhận thấy tầm quan trọng của portal mà các doanh nghiệp hiện nay đã và đang dần dần chuyển sang mô hình web portal Tuy còn nhiều mới mẻ những

sẽ là xu hướng tất yếu trong tương lai gần Vì vậy em chọn đề tài “Tìm hiểu và

triển khai portal mã nguồn mở “ làm đề tài thực tập tốt nghiệp cho mình

Mục đích: Tìm hiểu công nghệ Portal , tiến hành xây dựng một website portal

mã nguồn mở bằng công cụ do cộng đồng người Việt xây dựng và phát triển

3

Trang 4

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

Giáo viên hướng dẫn

4

Trang 5

MỤC LỤC

LỜI CẢM ƠN 1

TÓM TẮT 2

TỔNG QUAN 2

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN 4

CHƯƠNG 1 TỔNG QUAN VỀ PORTAL 9

1.1.Khái niệm về Portal 9

1.2 Sự phát triển của web portal 9

1.3 So sánh Website Portal với một Website thông thường 11

1.4 Các đặc trưng cơ bản của Portal 13

1.4.1 Chức năng tìm kiếm (Search function) 13

1.4.2 Dịch vụ thư mục (Directory service) 13

1.4.3 Ứng dụng trực tuyến (Online desktop application) 13

1.4.4 Cá nhân hoá các dịch vụ (Personalization or Customization) 14

1.4.5 Cộng đồng ảo (Virtual community hay Collaboration) 14

1.4.6 Một điểm tích hợp thông tin duy nhất (Comporate Portal) 15

1.4.7 Kênh thông tin (Channel) 15

1.5 Phân loại Portal 17

1.5.1 Consumer Portal 17

1.5.2 Vertical Portal 17

1.5.3 Horizontal Portal 17

1.5.4 Enterprise Portal 17

1.5.5 B2B Portal 18

1.5.6 G2G Portal 18

CHƯƠNG 2 CÁC KỸ THUẬT CỦA HỆ THỐNG PORTAL 18

2.1 Portlet 18

2.1.1 Khái niệm portlet 18

2.1.2 Phân loại Portlet và các dịch vụ web 19

2.1.2.1 Portlet địa phương (Local Portlet) 20

2.1.2.2 Portlet từ xa (Remote Portlet) 20

2.1.2.3 WebService cho các Portal từ xa (WSRP) 21

a WSRP và các chuẩn WSIA có liên quan 22

b Các chi tiết kỹ thuật của chuẩn WSRP 22

2.1.2.4 Portlet Container 23

2.1.2.5 Portal Service 23

2.1.2.6 Portal Server 24

2.2 Các bước xây dựng Portal 25

2.2.1 Lập kế hoạch 25

2.2.2 Thiết kế tổng thể 26

2.2.3 Phát triển Portal 26

2.3 Các công nghệ xây dựng Portal 27

2.3 1 Công nghệ xây dựng các phân hệ 27

2.3 2 Công nghệ để xây dựng Portal 28

2.3.2.1 Bảng so sánh giữa J2EE và NET 28

5

Trang 6

2.3.2.2 Mô hình hoạt động của J2EE và NET 30

a Mô hình hoạt động của J2EE 30

b Mô hình hoạt động của NET 30

2.4 So sánh các Portal trên thế giới 30

2.4.1 Các tiêu chí đánh giá 31

a JSR-168 compliant (Tuân theo JSR-168) 31

b Ease to installation (Tính dễ dàng cài đặt) 31

c Documentation Standard (Tài liệu chuẩn) 31

d Online Support (Hỗ trợ trực tuyến) 31

e Portal Management (Quản lý Portal) 32

f Portlet Resources (Các tài nguyên Portal) 32

g Performance & Scalability 32

h Security (bảo mật) 32

i Technology Used (Công nghệ sử dụng) 33

j Portal Features (Các đặc điểm của Portal) 33

k Server Dependency (Sự phụ thuộc server) 33

l WSRP standard compliant (Tuân theo chuẩn WSRP) 33

2.4.2 Đánh giá các Portal 34

2.4.2.1 uPortal 34

2.4.2.2 eXo Platform 35

2.4.2.3 Liferay 36

2.4.2.4 Stringbeans 38

CHƯƠNG 3 HỆ QUẢN TRỊ NỘI DUNG NUKEVIET 40

3.1 Tổng quan về NukeViet 40

3.1.1 Giới thiệu 40

3.1.2 Quá trình hình thành và phát triển 40

3.2 Tính năng của NukeViet 3.1 41

3.2.1 Tính năng cơ bản 41

3.2.2 Tính năng hệ thống: 41

3.2.3 Các module có trong NukeViet 3 42

a Kinh tế 42

b Tiện ích 42

c Giải trí 42

d Hệ thống 43

3.3 Ứng dụng 43

3.3.1 Cổng thông tin điện tử: 43

3.3.2 Báo điện tử, tạp chí điện tử: 43

3.3.3 Trang giải trí trực tuyến, văn hóa nghệ thuật: 43

3.3.4 Website doanh nghiệp vừa và nhỏ: 44

3.3.5 Website trường học, cá nhân, tổ chức : 44

3.4 Cấu trúc NukeViet 3 45

3.4.1 Đặc điểm chính: 45

3.4.2 Mô hình hoạt động của NukeViet 3 46

3.5 Ưu nhược điểm của NukeViet 47

3.5.1 Ưu điểm 47

3.5.2 Nhược điểm 47

6

Trang 7

3.6 Thành phần yêu cầu 47

3.6.1 Môi trường máy chủ 47

3.6.2 Môi trường máy người truy cập 48

CHƯƠNG 4: CÀI ĐẶT VÀ TRIỂN KHAI WEBSITE PORTAL 48

4.1 TỔNG QUAN 48

4.1.1 Giới thiệu 48

a Tên đầy đủ 48

b Loại hình ứng dụng 49

c Mục đích ứng dụng 49

4.1.2 Các module tích hợp 49

a Module About 49

b Module News 49

c Module User 49

d Module Contact 49

e Module Statistics 49

f Module Voting 49

g Module Banners 49

h Module Search 49

i Module Menu 49

k Module RSS 49

l Module Shops 50

m Module Music 50

n Module Weather 50

o Module Support Online 50

p Module ExchangeRates 50

4.2 CÀI ĐẶT TRÊN LOCALHOST 50

4.2.1 CÀI ĐẶT WEBSERVER 50

4.2.1.1 Các bước chuẩn bị 50

4.2.1.2 Cài đặt 50

4.2.2.KHỞI TẠO CƠ SỞ DỮ LIỆU 53U 4.2.3 CÀI ĐẶT NUKEVIET 3.1 54

4.2.3.1 Các bước chuẩn bị 54

4.2.3.2 Cài đặt 55

4.3 QUẢN TRỊ 58

4.3.1 Quản lý News 58

4.3.2 Quản lý Banners 61

4.3.3 Quản lý User 63

4.3.4 Quản lý Voting 65

4.3.5 Quản lý Giải trí 66

4.3.6 Quản lý Sản phẩm 69

4.3.7 Quản lý Dowload 74

4.3.8 Quản lý Giao diện 76

4.3.9 Quản lý Module 77

4.3.10 Quản lý Ngôn ngữ 79

4.3.11 Quản lý Cấu hình 80

4.3.12 Quản lý CSDL 82

7

Trang 8

CHƯƠNG 5: KẾT LUẬN – ĐÁNH GIÁ – HƯỚNG PHÁT TRIỂN ĐỀ TÀI 83

5.1 ĐÁNH GIÁ ĐỀ TÀI 83

5.1.1 Ưu điểm 83

5.1.2 Nhược điểm 83

5.2 HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 83

5.3 KẾT LUẬN 84

TÀI LIỆU THAM KHẢO 85

DANH SÁCH CHỮ VIẾT TẮT 85

DANH MỤC CÁC HÌNH 90

DANH MỤC CÁC BẢNG 90

8

Trang 9

CHƯƠNG 1 TỔNG QUAN VỀ PORTAL

1.1.Khái niệm về Portal

Portal: Cổng thông tin, tên đầy đủ là Web Portal, là một hệ thống hoạt động trên Web, định danh và xác thực người dùng đăng nhập, từ đó sẽ 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 như thao tác, tuỳ biến các công việc tác nghiệp của mình một cách nhanh chóng và đơn giản Portal có các tính năng giúp người quản trị thu thập, quản lý nhiều nguồn thông tin khác nhau, từ đó phân phối chúng dưới dạng các dịch vụ cho từng người dùng khác nhau tuỳ thuộc vào nhóm quyền, vào nhu cầu cũng như mục đích của người dùng đó Portal thực hiện việc này hết sức linh động, từ những công việc như tìm xem và đặt mua sách trong một kho hàng trực tuyến, xem và thay đổi thông tin về sinh viên và giáo viên trên các ứng dụng quản lý giảng dạy, đến việc đăng và chia sẻ các thông tin, tài nguyên, bài viết trên các diễn dàn hay cung cấp việc truy cập thống nhất và thuận lợi đến các thông tin nội bộ trong một website của công ty Portal như một cổng vào vạn năng cho người dùng tìm kiếm thông tin và tác nghiệp một cách thuận lợi và dễ dàng

Hình 1.1 Hình ảnh về một Portal

1.2 Sự phát triển của web portal

Khái niệm “Web Portal” đã xuất hiện từ khá lâu, chỉ sau khi ra đời WWW

9

Trang 10

một thời gian ngắn Ban đầu, các website chỉ như các báo quảng cáo điện tử, chứa các thông tin của một doanh nghiệp để khách hàng của họ có thể truy cập để xem

và theo dõi một cách thuận tiện Lúc đó, Portal được dùng để chỉ một trang chủ, chứa các liên kết đến các nội dung trong một website nào đó Ngoài ra, nó còn chứa một công cụ tìm kiếm nội bộ, cho phép người dùng dễ dàng tìm các thông tin nằm trong nội dung các trang web Chính vì vậy, cái tên Web Portal mang ý nghĩa: một cái “cổng” để truy nhập vào website Web Portal tựa như một danh bạ Web (Web directory) liên kết với một search engine đơn giản, tất cả chỉ dùng nội

bộ trong một website

Sau thời gian đầu, các website không chỉ mang ý nghĩa đại diện để giới thiệu của các công ty, chúng trở thành những công cụ tác nghiệp trực tuyến rất thuận tiện dành cho cả khách hàng, đối tác và các nhân viên cũng như ban quản trị doanh nghiệp Do đó các tính năng quan trọng nên tích hợp vào một website như các tính năng đăng nhập và xác thực người dùng, các tính năng quản lý nội dung, tính năng cá nhân hoá, đa ngôn ngữ cũng như các tính năng tác nghiệp cụ thể đối với từng website Web Portal cung cấp khả năng tích hợp các tính năng này một cách

dễ dàng thành một trang web duy nhất Web Portal đầu tiên kiểu này là Americal Online (AOL - http://www.aol.com/ )

Hiện tại, Web Portal không chỉ là một “cổng vào”, dẫn đường người dùng truy cập website, mà đã trở thành một siêu website, nghĩa là ngoài chứa đựng mọi

thông tin và dịch vụ cần có như một website thông thường, nó còn có khả năng quản trị giao diện cũng như nội dung của nhiều website, thêm bớt không những nội dung mới mà còn các dịch vụ mới, tích hợp các module thông dụng nhất như các forum, chat room, blog hay RSS feed…và quan trọng là, cung cấp việc truy cập các nguồn thông tin rất đa dạng và khác nhau này chỉ thông qua một lần đăng nhập duy nhất (single sign-on)

Một Web Portal nổi tiếng hiện nay là My Yahoo! (http://my.yahoo.com/)

10

Trang 11

của Yahoo, người dùng chỉ cần đăng nhập một lần duy nhất trong trang này để truy cập vào một trang web riêng mà Yahoo đã thiết kế sẵn, với nhiều module có sẵn như tin tức, bản tin thời tiết, bản đồ… Ngoài ra ở trang My Yahoo cũng có các link liên kết đến các ứng dụng web của Yahoo quen thuộc như Messenger, Mail, Group, Blog, Music… và người dùng sẽ không cần phải đăng nhập lại

Ngoài ra một Portal khá nổi tiếng ở Việt Nam hiện nay đó là Zing

(http://www.zing.vn) Portal của VNG Người dùng cũng chỉ cần 1 tài khoản với

1 lần đăng nhập duy nhất để có thể truy cập và sử dụng các tiện ích của Zing

như: Nghe nhạc xem phim, mạng xã hội, tin tức, games

Sang Tiếng Việt, Web Portal được dịch là “Cổng giao tiếp điện tử”, “Cổng giao dịch điện tử” hoặc ngắn gọn hơn: “Cổng điện tử” Tuy nhiên, cũng như tên tiếng Anh của chúng, các từ này thật sự chưa thể phản ánh hết được chính xác thế nào là một Portal

Để làm rõ bản chất của Portal chúng ta đưa ra bảng so sánh giữa Portal với

một Website thông thường sau đây

1.3 So sánh Website Portal với một Website thông thường

+ Portal hỗ trợ khả năng đăng nhập

một lần tới tất cả các tài nguyên

được liên kết với Portal Nghĩa là,

+ Một website thông thường không

có được khả năng đăng nhập một lần

+ Portal hỗ trợ khả năng cá nhân hóa theo người sử dụng

Đây là một trong những khả

năng quan trọng của Portal,

giúp nó phân biệt với một

+ Thường không hỗ trợ, nếu có chỉ ở mức độ rất nhỏ, không phải là đặc điểm nổi bật

11

Trang 12

website thông thường Portal

cá nhân hóa nội dung hiển thị,

thông thường đây là sự lựa

chọn một cách tự động dựa

trên các quy tắc tác nghiệp,

chẳng hạn như vai trò của

người sử dụng trong một tổ

chức Ví dụ khi một người mua

hàng

+ Khả năng tùy biến Đây là

một khả năng tiêu biểu của một

Portal

Ví dụ một giao diện Portal có mục

thông tin thời tiết, chúng ta có thể

bỏ phần thông tin này đi nếu chúng

ta không quan tâm đến nó Hoặc

chúng ta có thể thay đổi cách hiển

thị của Portal Ví dụ như thay vì

hiển thị bằng font chữ màu xác định

chúng ta có thể thay nó bằng chữ

màu đỏ, hay có thể tự thay đổi giao

diện của Portal nếu mặc định chức

năng A

+ Một vài Website có nhưng chỉ dừng lại ở mức độ dựng sẵn, người dùng chỉ có thể lựa chọn một vài giao diện đã có, mà không tự mình thay đổi từng mục một cách tùy ý

+ Liên kết truy cập tới hàng

trăm kiểu dữ liệu, kho dữ liệu,

kể cả dữ liệu tổng hợp hay đã

phân loại Portal nó có khả

năng liên kết tới tài nguyên dữ

liệu rộng lớn, gồm nhiều kiểu

dữ liệu từ dữ liệu thông thường

đến siêu dữ liệu

+ Chỉ sử dụng các liên kết để tới các site khác nhưng nội dung chủ yếu vẫn chỉ tập trung trong trang đó

Trang 13

Bảng 1.1 So sánh Portal và Website thông thường

1.4 Các đặc trưng cơ bản của Portal

1.4.1 Chức năng tìm kiếm (Search function)

Chức năng tìm kiếm là dịch vụ đầu tiên cần phải có của tất cả các Portal Sau khi người sử dụng mô tả loại thông tin mà mình cần thông qua các từ khoá hoặc

tổ hợp các từ khoá, dịch vụ này sẽ tự động thực hiện tìm kiếm thông tin trên các Website có trên Internet và trả lại kết quả cho người dùng Thời gian thực hiện của dịch vụ tìm kiếm này rất nhanh, do vậy rất tiện lợi cho người dùng

1.4.2 Dịch vụ thư mục (Directory service)

Đối với những người dùng không muốn tìm kiếm thông tin qua các từ khoá,

họ có nhu cầu tìm kiếm thông tin theo một chủ đề, lĩnh vực nào đó, thì có thể sử dụng dịch vụ thư mục phân loại thông tin Dịch vụ thư mục là dịch vụ thực hiện phân loại và sắp xếp thông tin trên các website theo chủ đề có thể có nhiều chủ đề con trong một chủ đề và có thể tiếp tục phân tách xuống các mức thấp hơn

1.4.3 Ứng dụng trực tuyến (Online desktop application)

Bao gồm các ứng dụng phổ biến nhất của Internet, hiện nay có các ứng dụng điển hình

- Thư điện tử: Các Portal lớn như Yahoo, Excite, v.v… thường cung cấp các tài khoản điện tử (E-mail account) miễn phí cho người dùng Dịch vụ này rất có ý nghĩa vì người dùng có thể nhận/gửi tại bất cứ địa điểm nào của

Internet

13

Trang 14

- Lịch cá nhân: Một số Portal cung cấp dịch vụ “lịch cá nhân - calendar” miễn phí cho người dùng Dịch vụ này giúp người sử dụng có thể sử dụng lịch

cá nhân mọi nơi trên Internet

- Hội thoại trực tuyến: Dịch vụ này cho phép nhóm người dùng hội thoại trực tuyến với nhau thông qua môi trường Internet, không phụ thuộc vào khoảng cách địa lý giữa họ Có thể liệt kê nhiều loại dịch vụ trực tuyến khác như dịch vụ

hỗ trợ kỹ thuật trực tuyến giữa các nhà sản xuất với khách hàng của mình…

- Các dịch vụ khác: Một trong những dịch vụ hấp dẫn người sử dụng là bưu thiếp điện tử Thay vì gửi bưu thiếp qua đường bưu điện thông thường, ngay nay người sử dụng có thể gửi bưu thiếp chức mừng người thân của mình thông qua mạng Internet

1.4.4 Cá nhân hoá các dịch vụ (Personalization or Customization)

Cá nhân hoá là dịch vụ đặc trưng quan trọng của Portal Trên cơ sở các thông tin của từng khách hàng cụ thể, nhà cung cấp có thể tạo ra các dịch vụ mang tính định hướng cá nhân, phù hợp với yêu cầu, sở thích của từng khách hàng riêng biệt của mình Thông qua đó các nhà cung cấp có khả năng tăng cường mối quan

hệ với khách hàng, duy trì được sự tín nhiệm của khách hàng đối với nhà cung cấp

Cá nhân hoá các dịch vụ được tiến hành thông qua dữ liệu thông tin cá nhân

về khách hàng (customer profiles) Dữ liệu này chứa các thông tin mang tính cá nhân như nghề nghiệp, thói quen, sở thích v.v… từ những thông tin cá nhân này, các nhà cung cấp có khả năng giới hạn cung cấp các thông tin và các dịch vụ mà khách hàng thực sự quan tâm muốn có Có nghĩa là tránh được việc cung cấp các thông tin và dịch vụ không cần thiết có thể sẽ gây khó chịu cho khách hàng, và thậm chí dẫn đến quyết định ngừng sử dụng dịch vụ của nhà cung cấp

1.4.5 Cộng đồng ảo (Virtual community hay Collaboration)

Cộng đồng ảo là một “một địa điểm ảo” trên Internet mà các cá nhân, các doanh nghiệp có thể “tập hợp” để giúp đỡ, hợp tác với nhau trong các hoạt

14

Trang 15

động thương mại Nói một cách khác “cộng đồng ảo” mang lại cơ hội hợp tác cho các cá nhân, tổ chức doanh nghiệp mà ranh giới địa lý không còn có ý nghĩa Sau đây là một số ví dụ về cộng đồng ảo:

- Hội thoại trực tuyến – Online chat: Thông qua dịch vụ này người ta có thể triển khai các hội nghị mà không cần phải tập trung toàn bộ cán bộ công nhân viên ở các địa phương trong phạm vi cả nước về một địa điểm cụ thể nào

đó

- Hỗ trợ trực tuyến - Online support : Tại đây khách hàng có thể nhận

được trực tiếp các hỗ trợ, tư vấn của các nhà sản xuất về sản phẩm mà khách hàng đã lựa chọn

1.4.6 Một điểm tích hợp thông tin duy nhất (Comporate Portal)

Đặc trưng này cho phép đơn vị cung cấp cho người sử dụng dùng một điểm truy nhập duy nhất để thu thập và xử lý thông tin từ các nguồn khác nhau, hoặc sử dụng các ứng dụng để khai thác kho tài nguyên thông tin chung Như chúng ta đã biết, có rất nhiều thông tin hàng ngày cần phải được xử lý và chuyển đến người dùng dưới nhiều nguồn khác nhau, ví dụ như E-mail, news, tài liệu, báo cáo, các bài báo, audio và các video files, v.v… sẽ rất khó khăn cho người dùng nếu các thông tin này được xử lý một cách riêng rẽ; Comporate Portal cho phép sử dụng các công cụ tích hợp để xử lý các nguồn thông tin này, do vậy năng suất lao động xử lý các thông tin của người dùng sẽ được nâng cao

1.4.7 Kênh thông tin (Channel)

Portal cũng cho phép xây dựng các liên kết (connector) tới các ứng dụng hoặc Portal khác Một Portal khác hoặc một Website thông thường khác có thể cung cấp nội dung thông tin của mình trong kênh thông tin của Portal Kênh thông tin là đặc tính rất mới của Portal, cho phép xây dựng các dịch vụ truy cập, xử lý các thông tin nằm bên trong mạng Intranet của một tổ chức, và sau

đó tổ chức hiển thị kết quả xử lý tin trên kênh thông tin của Portal

1.4.8 Các dịch vụ cơ bản

15

Trang 16

Từ những tính năng của portal nêu trên thì ta có thể hình dung một dịch

vụ mà hệ thống Portal cung cấp :

- Các dịch vụ cơ bản:

Post bài định dạng HTML/Document, Danh sách liên kết, Upload/Download Files, Thao tác ảnh…

- Các dịch vụ giao tiếp công cộng:

Forum, Thông báo, Thăm dò - Bỏ phiếu…

- Các dịch vụ cung cấp thông tin: Thông báo, Bản tin

- Các dịch vụ tìm kiếm: Tìm kiếm, Phân loại …

- Các dịch vụ trợ giúp người dùng: Thông tin cá nhân, Lịch biểu…

- Các dịch vụ tác nghiệp:

Quản lý nội dung, Hợp tác dự án, Quản lý bán hàng, quản lý nhân sự…

1.4.9 Lợi ích của hệ thống Portal

Hệ thống Portal hỗ trợ cộng đồng người dùng trực tuyến, các cán bộ, nhân viên, các đối tác và các nhà cung cấp dưới nhiều hình thức kết hợp khác nhau

Cơ sở hạ tầng Portal giúp việc khởi tạo, tích hợp, quản lí và cá nhân hóa toàn

diện các thông tin và ứng dụng cho mỗi người dùng riêng biệt phục vụ các nhu cầu và sở thích của một cộng đồng riêng biệt Các lợi ích thực sự của hệ thống Portal này đem lại nhìn từ khía cạnh hiệu quả ứng dụng thực tế đó là:

- Nâng cao hiệu quả làm việc cho các cá nhân và tô chưc, đối tác nhờ truy cập bảo mật, tích hợp tới các thông tin và ứng dụng liên quan, cũng như truy cập tổng thể tới tất cả các cá nhân, thông tin, tổ chức và các nhà cung cấp từ bất kì đâu, bất kì khi nào

- Cải thiện các tiến trình hợp tác nhờ luồng thông tin tốt hơn giữa con người

và các ứng dụng, và nhờ các môi trường cộng tác giúp giảm thời gian để chuyển đổi thông tin thô thành tri thức

- Giảm gánh nặng của việc triển khai và quản lí thông tin và các dịch vụ ứng dụng trong một tổ chức

- Duy trì, quản lý, mở rộng, nâng cấp, tái sử dụng dễ dàng, tiết kiệm chi phí đầu tư để xây dựng lại hệ thống

16

Trang 17

- Cho phép các hãng thứ 3 tham gia vào việc cung cấp ứng dụng hệ thống, các dịch vụ trung gian Khả năng này làm phong phú, đa dạng khả năng úng dụng và triển khai của hệ thống Portal

1.5 Phân loại Portal

Việc phân loại Portal có thể có nhiều cách khác nhau Nếu căn cứ vào đặc trưng của Portal người ta chia Portal thành các loại như sau :

1.5.1 Consumer Portal

Cung cấp nhiều lựa chọn cho việc tìm kiếm, chuyển, E-mail, tự sửa khuôn dạng, lựa chọn tin tức, calendar, quản lý địa chỉ liên hệ, các cuộc hẹn, các lưu ý, chú thích, các địa chỉ website, real-time chat và các chức năng Intranet, v.v…

Trang 18

tin trong mạng Intranet của một tổ chức qua một cổng truy cập duy nhất

CHƯƠNG 2 CÁC KỸ THUẬT CỦA HỆ THỐNG PORTAL

2.1 Portlet

2.1.1 Khái niệm portlet

Portlet là giao diện người dùng, là các module tương tác nhiều mức cho phép tích hợp vào Portal các ứng dụng web khác nhau Các Portlet này sinh ra các đoạn trang (fragment), các đoạn trang này được Portal ghép lại thành một trang hoàn chỉnh

18

Trang 19

Hình 2.1 Các portlet được ghép lại thành portal

Portlet thực thi trong môi trường thời gian thực được gọi là Portlet Container, các Portlet trình bày nội dung của chúng trong một cửa sổ hiện trên trang Portal, tương tự như cửa sổ trong màn hình (desktop) Cửa sổ của Portlet có một thanh tiêu đề chứa, các nút điều khiển cho phép người sử dụng mở rộng và thu nhỏ nó [13]

Một Portlet có thể hiển thị trên một trang web như một cửa sổ cá nhân nhỏ, Portlet là nội dung bên trong cửa sổ, nó không phải là bản thân cửa số đó

Các Portlet bao gồm nhiều mức, cho phép người sử dụng giao tiếp với nó để thực hiện công việc trong môi trường Portal

2.1.2 Phân loại Portlet và các dịch vụ web

Giống như dịch vụ web hướng dữ liệu, các Portlet dựa trên kiến trúc hướng dịch vụ, nó cho phép các công ty sử dụng lại các thành phần của phần mềm để nhanh chóng xây dựng các ứng dụng trong các Portal mới

19

Trang 20

Không giống như các dịch vụ web hướng dữ liệu, các Portlet tóm lược các dịch vụ tác nghiệp ở mức cao bao gồm các tương tác người dùng, các lưu đồ và các trình diễn tùy biến

2.1.2.1 Portlet địa phương (Local Portlet)

Các Portlet địa phương là các Portlet thực thi ở bên trong một máy chủ Portal Khi một máy chủ Portal sinh ra một trang và những thứ cần thiết trong một đoạn trang, nó gọi Code Portlet và sử dụng giao diện tiền định nghĩa JSR168 định nghĩa một giao diện Portlet địa phương chuẩn cho môi trường J2EE

Hình 2.2 Local Portlet

2.1.2.2 Portlet từ xa (Remote Portlet)

Portlet từ xa là các Portlet thực thi bên ngoài một máy chủ Portal, hoặc bên trong một máy chủ của một tổ chức hoặc ở một vị trí từ xa Khi một Portal cần đoạn trang, nó sẽ gọi Portlet từ xa thông qua SOAP

20

Trang 21

Hình 2.3 Remote Portlet

Giao thức WSRP cung cấp định nghĩa một chuẩn giao diện SOAP cho các Portlet từ xa Vấn đề quan trọng của Portlet từ xa là tách các Portlet ra khỏi tổ chức và môi trường Portal Để thực hiện việc này có thể :

- Sử dụng các Portlet thành phần thứ ba để tạo thành các Portal mới

- Phân bổ trách nhiệm tạo và bảo trì các chức năng ứng dụng giữa các đơn vị khác nhau

- Sử dụng các công cụ phát triển, các phương thức và các kiến trúc khác nhau

để tạo ra các chức năng Portlet

- Đạt được thông qua môi trường phát triển trong vấn đề tải, thực thi, quản lý

và bảo mật

2.1.2.3 WebService cho các Portal từ xa (WSRP)

Chuẩn WSRP là giao thức định nghĩa giao diện SOAP tạo khả năng cho các Portal và các ứng dụng không phải là Portal kết nạp vào các Portlet từ xa WSRP được định nghĩa bởi tổ chức OASIS, một tổ chức phi lợi nhuận toàn cầu có chức năng phát triển, tập hợp, và thông qua các chuẩn Đặc biệt WSRP được thực hiện

21

Trang 22

khi SOAP gọi phiên HTTP Các đoạn trang, đặc biệt là HTML được trả lại như là một thành phần của payload SOAP

Hình 2.4 Mô hình WSRP cho Portal từ xa

a WSRP và các chuẩn WSIA có liên quan

Sự ra đời của định nghĩa WSRP là kết quả làm việc của ủy ban OASIS và

WSIA (dịch vụ web cho ứng dụng hợp tác)

Phần lớn các nhà sản xuất đều tuyên bố dự định của họ sẽ hỗ trợ Portal thông qua chuẩn WSRP Ủy ban WSRP và WSIA bao gồm BEA, Bowstreet,

CA, Epicentric, Fujitsu, IBM, Novell, Oracle, Plumtree, SAP, Sun, TIBCO, WebCollage, và một số hãng khác

b Các chi tiết kỹ thuật của chuẩn WSRP

WSRP định nghĩa các giao diện như sau :

Một tập hợp giao diện hỗ trợ sự kết hợp ban đầu giữa Portal và Portlet Một giao diện cho phép một Portal yêu cầu một đoạn trang từ một Portlet

Một giao diện cho phép một Portal đưa tương tác của người sử dụng vào

22

Trang 23

Portlet

Một tập hợp các giao diện cho phép Portal và Portlet cộng tác và lưu trữ đa cấu hình của một Portlet

2.1.2.4 Portlet Container

Các Framework Portal cung cấp môi trường thực thi thời gian thực cho các

Portlet được biết đến như là một Portlet Container Sự tổng hợp nội dung không phải là chức năng liên kết với Portlet Container nhưng nó lại liên kết với Portal hoặc Portal server

Hình 2.5 Mô tả ngữ cảnh trong đó tồn tại một Portlet

2.1.2.5 Portal Service

Portlet dựa vào container cung cấp hạ tầng cơ sở cần thiết để đáp ứng cho một môi trường Portal Cơ sở hạ tầng Portal cung cấp tập hợp các dịch vụ cốt lõi được yêu cầu bởi các Portlet

- Dịch vụ cá nhân hóa tạo khả năng cho các Portlet sử dụng các công cụ và các thông tin profile để sửa đổi nội dung nhằm mục đích thỏa mãn người dùng

- Dịch vụ thông báo sự kiện tạo khả năng cho các Portlet đáp ứng nhiều yêu cầu mà không ảnh hưởng đến môi trường của Portal

- Dịch vụ liên lạc cung cấp sự giao tiếp từ Portlet này tới Portlet khác

- Quản trị nội dung đáp ứng kết nối dễ dàng tới tài nguyên ứng dụng hay nội

23

Trang 24

dung ảo nào đó

- Các dịch vụ tìm kiếm đáp ứng việc tìm kiếm đa tiêu chí trên nhiều

nguồn tài nguyên dữ liệu

- Dịch vụ hợp tác tạo khả năng cho người dùng liên lạc và tham dự vào các cộng đồng người sử dụng cùng quan tâm đến một lĩnh vực

- Dịch vụ quản trị người dùng và nhóm người dùng cho phép người sử dụng gia nhập vào một Portal, tự quản lý tài khoản và các thông tin mà mình ưa thích

- Dịch vụ biến đổi trang đáp ứng rất nhiều thiết bị client

- Các dịch vụ khác cung cấp hoặc quản lý

Profile người dùng và các kiểu dữ liệu liên tục

Dịch vụ điều khiển truy cập và bảo mật bao gồm chứng thực và cấp quyền người dùng

2.1.2.6 Portal Server

Portal server là một máy chủ ứng dụng chuyên biệt cung cấp logic tác nghiệp cho một ứng dụng Portal, đặc biệt được xây dựng trên nền máy chủ ứng dụng J2EE, Portal cung cấp sự phát triển và cơ sở hạ tầng thời gian thực cho Portal Một Portal Server thường làm việc liên kết với một Web Server để xử lý yêu cầu của client

Portlet có thể được xem như là một cách mở rộng chức năng của Portal Server

Hình 2.6 Server Portal mở rộng Server ứng dụng để hỗ trợ ứng dụng Portal Theo ví dụ dưới đây, Portal yêu cầu xử lý một kịch bản Đây là kịch bản

được sinh ra khi người sử dụng yêu cầu trang Portal từ thiết bị client

24

Trang 25

- Thiết bị client (sử dụng Web Browser hoặc PDA) gửi một yêu cầu HTTP cho trang Portal tới máy chủ Web

- Máy chủ Web nhận ra yêu cầu và gửi tiếp yêu cầu đó tới máy chủ Portal

- Máy chủ Portal sẽ quyết định nếu yêu cầu này chứa một hành động hướng mục đích tới một Portlet trên trang Portal Portal sẽ yêu cầu Portlet container gọi Portlet xử lý hành động này

- Portlet container yêu cầu mỗi Portlet liên kết đến trang Portal gửi lại một đoạn trang (fragment) với nội dung được yêu cầu

- Các Fragment này được quay trở về máy chủ Portal, nơi đó chúng được tổng hợp để tạo nên một trang Portal

- Trang Portal được gửi trở lại thiết bị client để hiển thị

Dưới đây là sơ đồ các bước xử lý yêu cầu kịch bản của một hệ thống Portal:

Hình 2.7 Trang Portal yêu cầu xử lý kịch bản

2.2 Các bước xây dựng Portal

2.2.1 Lập kế hoạch

25

Trang 26

Đây là giai đoạn xây dựng giải pháp tổng thể, đáp ứng nhu cầu quản lý và chiến lược của khách hàng Kế hoạch tổng thể bao gồm: phạm vi của dự án, các mục tiêu chiến lược của khách hàng và hiện trạng của hệ thống bao gồm cả các mối quan hệ thông tin nội bộ với bên ngoài

2.2.2 Thiết kế tổng thể

Thiết kế tổng thể là giai đoạn xây dựng kiến trúc ứng dụng cho phép chuyển hoá từ các yêu cầu nghiệp vụ sang ứng dụng Portal Cũng như các phần mềm ứng dụng, kiến trúc ứng dụng bao gồm mô hình chức năng và mô hình hoạt động Mô hình chức năng là toàn bộ các chức năng nghiệp vụ của hệ thống,

mô tả cấu trúc, phân cấp các thành phần của hệ thống, các trao đổi thông tin

và các giao diện giữa các thành phần của hệ thống Mô hình hoạt động mô tả kiến trúc phần cứng (hạ tầng phần cứng, phương thức tổ chức mạng), kiến trúc phần mềm và các thành phần dữ liệu, các ràng buộc (tốc độ xử lý, mức độ bảo mật,…) và phần quản trị hệ thống (lập kế hoạch nguồn lực, chuyển giao hệ thống, sao lưu, khôi phục)

Kiến trúc ứng dụng cũng phải chỉ rõ mức độ đáp ứng của các giải pháp đối với chiến lược kinh doanh và phương thức đạt được yêu cầu đó

2.2.3 Phát triển Portal

Phát triển là giai đoạn cài đặt giải pháp đã được xây dựng ở các bước trên, bao gồm: thiết kế, lập trình, kiểm tra, cài đặt sử dụng hệ thống Portal Các phân tích viên thông thường tham gia vào giai đoạn này với vai trò kiểm soát viên để đảm bảo cho hệ thống đáp ứng được yêu cầu của người dùng

Các giai đoạn hình thành và phát triển Portal được thể hiện qua sơ đồ sau :

26

Trang 27

Hình 2.8 Các giai đoạn của lộ trình xây dựng và triển khai Portal

2.3 Các công nghệ xây dựng Portal

2.3 1 Công nghệ xây dựng các phân hệ

Một hệ thống Portal gồm 3 phân hệ chính : tổ chức trang thông tin; kiểm soát truy cập và quản lý thành viên; xử lý yêu cầu và xây dựng nội dung

- Tổ chức trang thông tin (Page Aggregation)

+ Nội dung của trang được lấy từ kho dữ liệu;

+ Có khả năng trình bày trang theo những mẫu có sẵn trong kho dữ liệu;

- Kiểm soát truy cập và quản lý thành viên (Security & Member services)

+ Nhiệm vụ quản lý thành viên và kiểm soát tuy cập

+ Dữ liệu lấy từ kho có thể được tổ chức dưới dạng LDAP,

CSDL,ActiveDirectory

- Xây dựng yêu cầu và xây dựng nội dung :

+ Nhiệm vụ xử lý các yêu cầu của người sử dụng, tạo nội dung của các trang thông tin

+ Thiết lập sẵn các kênh thông tin (Channel/Portlet) như : tìm kiếm

(Search), làm việc theo nhóm (Collaboration),…

27

Trang 28

2.3 2 Công nghệ để xây dựng Portal

Hiện nay hai công nghệ chủ yếu được sử dụng để phát triển Portal là J2EE và NET, để thấy được bản chất của các công nghệ này chúng ta đưa ra bảng so sánh giữa hai công nghệ như sau:

2.3.2.1 Bảng so sánh giữa J2EE và NET

MicroSoft.NET J2EE Các đặc tính

Ngôn ngữ lập trình

C# Java - C# và Java đều phát triển từ C/C++

Hầu hết các tính năng cơ bản của C/C++ đều được sử dụng trong hai ngôn ngữ này C# có vay mượn một

số ý tưởng về thành phần (component) của JavaBeans như Properties/attributes, events…

- Java có thể chạy trên mọi flatform (Unix, Windows) hỗ trợ Java VM Còn C# chỉ có thể chạy trên nền Windows

Ngôn ngữ lập trình xây dựng các trang thông tin

- ASP+ sử dụng VB.NET, C# và một

số ngôn ngữ khác để xây dựng module trong việc tạo trang Tất cả các module này sẽ được dịch thành native code thông qua common language runtime

28

Trang 29

- JSPs sử dụng đoạn mã Java (snippets, hoặc JavaBean references), compiled into Java byte codes (either on deman or batch-compiled, depending on the JSP implementation)

Cơ chế thực hiện chương trình

- NET common language runtime cho phép các module được viết bằng nhiều ngôn ngữ khác nhau cod thể sử dụng các component dùng chung trên platform windows

- Java's Virtual Machine cho phép các module viết bằng Java chạy trên bất

kỳ platform nào hỗ trợ JVM

- CORBO cho phép các Module viết bằng các ngôn ngữ khác nhau có thể sử dụng các component chạy trên bất cứ flatform nào mà có cài đặt ORB

Bảng 2.1 So sánh giữa J2EE và NET

29

Trang 30

2.3.2.2 Mô hình hoạt động của J2EE và NET

a Mô hình hoạt động của J2EE

Hình 2.9 Mô hình hoạt động của công nghệ J2EE

b Mô hình hoạt động của NET

Hình 2.10 Mô hình hoạt động của công nghệ NET

2.4 So sánh các Portal trên thế giới

30

Trang 31

2.4.1 Các tiêu chí đánh giá

Có một sự khó khăn khi so sánh các Portal vì mỗi Portal trong số chúng dựa trên những yêu cầu khác nhau và các công nghệ khác nhau Việc so sánh portal dựa trên những tiêu chí đánh giá khác nhau Những tiêu chí này dựa trên lõi và những yêu cầu lựa chọn từ Portal:

a JSR-168 compliant (Tuân theo JSR-168)

JSR-168 là yêu cầu khá quan trọng cho việc phát triển portal từ những developer tự do cho đến những nhà cung cấp Portal API cụ thể

b Ease to installation (Tính dễ dàng cài đặt)

Các portal có ý nghĩa là một presentation layer cho business logic sẵn có và không nên mang đến sự phức tạp cho giải pháp Việc đánh giá ở đây dựa trên các yêu cầu để bắt đầu, ví dụ: cấu hình database, framework có chứa web-container hay ko? Hầu hết các portal sử dụng Tomcat container và dễ dàng cài đặt

c Documentation Standard (Tài liệu chuẩn)

Việc phát triển Portal tương tự như phát triển Web Application ví dụ Servlet và JSP, nhưng vẫn còn những công việc phụ thuộc vào Portal Framework Tài liệu của Portal Framework với các ví dụ được viết sẵn sẽ rất quan trọng Đây là tiêu chí đánh giá sự hoàn hảo, sự chính xác và chất lượng tài liệu của mỗi Portal Framework bao hàm cả Administrator/User Guides

d Online Support (Hỗ trợ trực tuyến)

Tài liệu không trả lời hết và nhắm vào các câu hỏi của tất cả các lập trình viên, và thỉnh thoảng một lập trình viên có thể cần sự hỗ trợ của các framework developer Trong tiêu chí này, việc đánh giá dựa trên chất lượng, sự nhanh chóng,

sự tương ứng của các hồi đáp của các developer cho các truy vấn Tiêu chí này cũng bao gồm việc sửa chữa Wiki, tính linh hoạt khi hỗ trợ những đặc điểm mới

31

Trang 32

e Portal Management (Quản lý Portal)

Việc deploy các portlet trong Portal Framework yêu cầu việc cấu hình những

mô tả deploy khác nhau Một vài trong số đó là Portlet API như portlet.xml và yêu cầu J2EE như web.xml, phân còn lại cụ thể đối với các Portal Framework Tiêu chí này bao gồm chức năng quản trị, ví dụ: thêm user, gán quyền cho các user, gán đề mục cho các portlet và và chức năng của user để tùy biến các portlet theo các yêu cầu khác nhau, chẳng hạn: layout, skin, thêm hoặc xóa các portlet

f Portlet Resources (Các tài nguyên Portal)

Thông thường, những Portal thường đi kèm với các portlet tiện ích có thể reuse(dùng lại) chẳng hạn Mail Portlet, Calendar Portlet và Search Portlet Trong tiêu chí này, việc đánh giá dựa trên tính hữu dụng và tính reuse của các portlet đi kèm với Portal

g Performance & Scalability

Thiết kế kiến trúc của Portal Framework là điều quyết định khả năng thực thi của nó Những Portal là những layer bổ sung cho SOA (Service Oriented Architecture) và vì thế có khả năng làm chậm đi khả năng thực thi của các service Việc cung cấp chức năng portal cơ bản là không đủ trong một môi trường thương mại mà ở đó tốc độ thực thi và tính thương mại là rất quan trọng Tiêu chí này đánh giá dựa trên giới hạn của thời gian khởi động, thời gian load portlet, thời gian truy cập database

h Security (bảo mật)

Hầu hết các Portal Framework đi kèm với cơ chế bảo mật default là user login với password Kỹ thuật authentication & authorization (xác thực và phân quyền) này không đủ trong thương mại hoặc những project khoa học Trong tiêu chí này, việc đánh giá các khả năng bảo mật bổ sung của Portal Framework chẳng hạn Java Authentication & Authorization Service (JAAS), Java Open

32

Trang 33

Single Sign On (JOSSO) & cấu hình SSL

i Technology Used (Công nghệ sử dụng)

Những Portal Framework khác nhau sử dụng những công nghệ lựa chọn khác nhau không phải là một phần của Portlet API Tiêu chí này đánh giá các công nghệ phổ biến khác nhau được sử dụng bởi những Portal Framework khác nhau như Struts, JSF, Spring, Hibernate, Tiles, EJB và Web Service

j Portal Features (Các đặc điểm của Portal)

Các Portal Framework không chỉ là những portal/portlet container host các portlet khác nhau Mà hầu hết các Portal Framework đi kèm với các chức năng

bổ sung để phát triển các portal J2EE trong thực tế chẳng hạn Content Management System (CMS), Workflow, các công cụ Administrator Management, các công cụ Framework Monitoring Tiêu chí này đánh giá các đặc điểm sẵn có cũng như tiêu chuẩn và khả năng sử dụng chúng trong Portal Framework\

k Server Dependency (Sự phụ thuộc server)

Portlet API là một mở rộng của servlet API và không cần những đặc điểm cao cấp của J2EE, nhưng trong thực tế hầu hết Web Application là J2EE Application sử dụng EJB cho persistence Web Service cũng có thể được sử dụng để đóng gói và trao đổi Vì thế Portal Framework không chỉ giới hạn trong servlet container như Tomcat Sẽ là hữu dụng hơn nếu như các Portal Framework có thể deploy trên những server khác nhau và trong tiêu chí này việc đánh giá tập trung vào tính tương thích của các Portal Framework với những server thương mại và mã nguồn mở khác nhau

l WSRP standard compliant (Tuân theo chuẩn WSRP)

Portlet API là presentation layer cho Web Application, nhưng không cần thiết client chỉ dựa trên Web; chuyển đổi sang desktop client cũng là một lựa chọn

33

Trang 34

WSRP specification tạo nên khả năng sử dụng portal/portlet trong những ứng dụng không phải Web chẳng hạn Java Swing Tiêu chí này đánh giá việc hỗ trợ WSRP trong các framework

-uPortal: theo sự sử dụng rất lớn trong các học viện

-eXo: theo sự phổ biến

-Liferay: theo sự phổ biến, giao diện người dùng và chức năng lựa chọn

-Stringbeans: theo sự dễ dàng sử dụng

2.4.2.1 uPortal

uPortal là một Portal Framework được sử dụng rộng rãi trong các học viện và

nó chủ yếu nhằm vào những yêu cầu của các tổ chức này uPortal là một Portal Framework rất ổn định và đã được ra đời thậm chí trước cả JSR-168 specification, theo đó uPortal đã áp dụng những kỹ thuật ko theo chuẩn được gọi

là channel uPortal mặc dù đã tuân theo JSR-168 nhưng hầu hết những đặc điểm sẵn có trong uPortal vẫn dựa trên tùy biến và giải pháp đã phát triển với các channel adapter hơn là các portlet nguyên thủy uPortal hỗ trợ portlet thông qua Pluto Portlet Framework uPortal cũng là open source Portal Framework hỗ trợ nhiều kiểu portal nhất: từ Java portal đến HTML portal, từ text portal đến XML portal

34

Trang 35

uPortal có thể sử dụng Central Authentication Service (CAS) để điều khiển truy cập các ứng dụng xác thực dựa trên “khi nào”, “ai”, “từ đâu”, và “dịch vụ gì” Kiểu xác thực này rất mạnh mẽ trong môi trường hỗn tạp như các trường đại học/cao đẳng Rất dễ dàng để cấu hình các group và các permission service là yêu cầu quyết định trong môi trường này với nguồn thông tin cục bộ

uPortal hỗ trợ các portlet tuân theo JSR-168 thông qua adapter và yêu cầu các file cấu hình chuẩn như portlet.xml và web.xml

Trước đây, tài liệu liên quan đến uPortal không được quan tâm tốt và không được cập nhật thường xuyên Các tài liệu về uPortal đặt ở nhiều nơi khác nhau: website uPortal, wiki, email list, issue management system của uPortal (JIRA) và những nguồn khác

uPortal hỗ trợ đặc tả WSRP và uPortal có thể được sử dụng như một WSRP với WSRP4J implementation reference

2.4.2.2 eXo Platform

eXo Platform định nghĩa như một portal và một CMS Thông thường eXo được sử dụng như một portal tích hợp, eXo cung cấp cho các user khả năng truy cập tùy biến vào hệ thống thông tin của công ty và các tài nguyên Thông qua môi trường Web, eXo cung cấp business information cho phép chuyển đổi và quản lý data của nó cũng như việc thực thi các xử lý business trái ngược nhau eXo là enterprise portal tuân thủ JSR-168 xây dựng từ những module khác nhau Nó dựa trên JSF, Pico Container, JbossMX và AspectJ WSRP cũng được

hỗ trợ trong eXo eXo cũng hỗ trợ những công nghệ khác nhau bằng cách implement những cầu nối khác

35

Trang 36

eXo Platform đi kèm với hai phiên bản, “express” và “enterprise” edition Không có nhiều sự khác nhau giữa hai phiên bản này trong giới hạn các chức năng và các đặc điểm mà chỉ là sự khác nhau của các container ví dụ Servlet Container và EJB Container Express edition được deploy trong servlet engine trong khi đó enterprise edition được deploy trong application server J2EE 1.3 đầy

đủ Cả hai phiên bản này đều được deploy thành công trong Tomcat 5.0 và JBoss 4.1

Giống như những Portal Framework khác, có nhiều tập hợp các porlet đi kèm với eXo Platform Các portet liên quan MVC, liên quan Web, liên quan navigation, liên quan user/admin Các porlet liên quan đến workflow và WSRP cũng được chứa trong tập hợp này

eXo mang đến một layer (Struts) giữa portal và bất kỳ application Struts nào

có sẵn bên trong các portlet, các Struts application này có thể được nhúng vào trong một portlet với một chút thay đổi Những cầu nối khác, như Cocoon cũng được chứa trong eXo để nhúng vào các Cocoon application có sẵn vào một portlet fragment

Nhìn chung, eXo Platform là một open source Portal Framework mạnh mẽ với việc hỗ trợ nhiều công nghệ mới Khả năng thực thi của eXo Platform tốt nhất với thời gian upload portal nhỏ nhất

2.4.2.3 Liferay

Liferay Portal Enterprise mang nhiều ý nghĩa lớn hơn là một portal container,

mà đi kèm với nó là rất nhiều đặc điểm hữu dụng như Content Management System (CMS), tuân theo WSRP, Single Sign On (SSO), hỗ trợ AOP (Aspect Oriented Programming), và nhiều công nghệ mới nhất khác Liferay có một thiết

36

Trang 37

kế kiến trúc rất rõ ràng dựa trên thực tế tốt nhất của J2EE, điều đó cho phép nó được sử dụng với một loạt các container khác nhau, từ những servlet container như Tomcat và Jetty cho tới những server tuân theo J2EE mạnh mẽ như BorlandES, JBoss, JOnAs, JRun, Oracle9iAS, Orion, Pramati, Sun JSAS, WebLogic và WebSphere Trong trường hợp này, Liferay chỉ là một open source portal container hỗ trợ gần như hầu hết JavaServer open source hay thương mại

Tính linh hoạt trong thiết kế cho phép bổ sung business logic bât kỳ một công nghệ nào tương ứng và thích hợp như Struts, Tiles, Spring và EJB, có thể được dựa trên Hibernate, Java Messaging Service (JMS), Java Mail và Web Service Liferay có thể thay đổi Portal Presentation trở thành một Java Application bất kỳ mà không có hoặc rất ít sự thay đổi

Việc customize các portal page và các portlet trong những open source Portal Framework như eXo Platform là không dễ dàng, và có thể làm rất nhiều trong việc cấu hình, nhưng với Liferay layout management thì rất dễ dàng Liferay Portal có một GUI dựa trên Web cho phép user tương tác để thiết kế layout của Portal Page mà không cần phải chỉnh sửa bất kỳ file cấu hình nào Điều này tương tự như Stringbeans Portal

Liferay Portal Enterprise đi kèm với những portlet hữu dụng Và nếu đem

so sánh với các open source Portal Framework khác, Liferay portal có một lượng lớn các portlet tiện ích tuân theo JSR-168 và có thể được sử dụng trong bất kỳ Portal nào chỉ với rất ít thay đổi

Liferay hỗ trợ WSRP specification cả cho WSRP consumer và WSRP producer như một thực thể của Liferay portal Việc cấu hình Liferay yêu cầu một vài deployment descriptor không chuẩn chẳng hạn Struts hoặc Tiles, điều này có thể làm cho việc phát triển trở nên phức tạp hơn

Giống như hầu hết các Portal Framework, Liferay sử dụng database mặc định

là Hypersonic rất tốt cho mục đích phát triển Liferay có thể được sử dụng với bất kỳ database nào với chút ít ảnh hưởng tùy theo việc sử dụng Hibernate trong thiết kế của nó Liferay có các JSP tag lib và nhiều class tiện ích khác trong

37

Trang 38

những package khác nhau để trợ giúp các developer trong việc phát triển portal/portlet Sử dụng những package tiện ích này có thể dễ dàng phát triển portal nhưng khi đó những portal này sẽ giống Liferay và các portlet thì không còn tuân theo JSR-168 nữa

2.4.2.4 Stringbeans

Stringbeans Portal được tạo nên là một portlet container tuân theo JSR-168 và một framework cho việc quản trị hữu dụng các portal application Stringbeans được deploy như một J2EE Web Application trong một container hỗ trợ Servlet 2.3 Specification và JSP 1.2 Specification

Mặc định, Stringbeans sử dụng Hypersonic database Tuy nhiên, Stringbeans vẫn làm việc với bất kỳ relational database nào hỗ trợ JDBC 2.0 và đã được kiểm tra trên PostgreSQL database Stringbeans không hỗ trợ Hibernate, vì thế việc chuyển từ database này sang database khác phải yêu cầu tự cấu hình

Stringbeans có một tập hợp tài liệu user guide rất tốt có thể tìm thấy online hoặc download để sử dụng Stringbean được đánh giá là có documentation tốt nhất trong số các open source Portal Framework Thêm vào đó, hình thức online support của nhóm Stringbeans rất hữu dụng cả về thời gian hồi đáp các bug, các truy vấn, và cả trong việc bổ sung những đặc điểm phụ được yêu cầu Stringbeans có nhiều đặc điểm thân thiện với user và developer và một trong

số đó được liệt kê dưới đây:

- Dễ dàng layout management

- Hỗ trợ các theme cho look & feel

- Xác thực user dựa trên JAAS

- Page layout đầy đủ với menu và column

- Logging với file đơn giản hoặc database đều hỗ trợ tốt

38

Trang 39

39

- Điểu khiển truy cập mỗi portlet dựa trên user ID, role và các quan hệ database bất kỳ

- Portal view dựa trên user ID, role và các mối quan hệ

- Các portle có khả năng hiển thị RSS headline, data từ các table, các report, các biểu đồ, XML document thông qua XSL transformation

- Hỗ trợ mobile client (WML 1.1 va XHTML P1.0)

Stringbeans Portal có thể được deploy trong một J2EE server với EJB container Việc deploy portlet trong Stringbeans Portal rất dễ dàng và thật sự tuân theo JSR-168, và chỉ yêu cầu hai file cấu hình là portlet.xml và web.xml Hầu hết các Portal Framework khác đi kèm với nhiều file cấu hình làm cho việc phát triển

và deploy trở nên phức tạp, ví dụ JBoss Portal Framework yêu cầu từ 6 đến 7 file cấu hình

- Phiên bản hiện tại của Stringbeans đã hỗ trợ WSRP

Trang 40

40

CHƯƠNG 3 HỆ QUẢN TRỊ NỘI DUNG NUKEVIET

3.1 Tổng quan về NukeViet

3.1.1 Giới thiệu

NukeViet là một hệ quản trị nội dung mã nguồn mở của Việt Nam , người sử

dụng thường gọi NukeViet là portal vì nó có khả năng tích hợp nhiều ứng dụng

trên nền Web NukeViet cho phép xây dựng một website động, đa chức năng, hiện đại một cách nhanh chóng mà không cần phải biết về lập trình

3.1.2 Quá trình hình thành và phát triển

Quá trình phát triển của NukeViet đi từ tự phát cho đến chuyên nghiệp là một điển hình của con đường phát triển mã nguồn mở trên thế giới NukeViet có quá trình phát triển từ năm 2004, Từ việc sử dụng sản phẩm PHP-Nuke để làm cho website cá nhân, Nguyễn Anh Tú - một lưu học sinh người Việt tại Nga - đã cùng cộng đồng Việt hóa, cải tiến thành NukeViet Được sự đón nhận của đông đảo người sử dụng, NukeViet đã liên tục được phát triển và trở thành một ứng dụng thuần Việt Cho đến phiên bản 3.0, đội ngũ phát triển NukeViet đã tách khỏi ảnh hưởng lạc hậu của PHP-Nuke và xây dựng NukeViet thành một ứng dụng khác biệt hoàn toàn Với 100% dòng code được viết mới, NukeViet 3.0 đã cho kết quả

là Website đạt chuẩn xHTML 1.0 và CSS 2.1 cũng như hỗ trợ Ajax từ trong bộ nhân

Kể từ năm 2010, NukeViet đã phát triển theo mô hình chuyên nghiệp, đội ngũ quản trị đã thành lập doanh nghiệp chuyên quản Mặc dù từ phiên bản 3.0,

NukeViet được viết mới hoàn toàn và trong quá trình phát triển của mình, nhiều cái tên đã được đưa ra để thay thế nhưng cuối cùng cái tên NukeViet đã được giữ lại để nhớ rằng NukeViet được khởi đầu từ PHP-Nuke và để cảm ơn Franscisco Burzi - Tác giả PHP-Nuke - vì chính ông là nhân tố để có một cộng đồng mã nguồn mở NukeViet với hàng chục ngàn người dùng như hiện nay Dù NukeViet

3 đã được viết mới hoàn toàn nhưng nó vẫn chịu những ảnh hưởng từ PHP-Nuke

ở những điểm sau:

Ngày đăng: 30/07/2014, 03:13

HÌNH ẢNH LIÊN QUAN

Hình 1.1. Hình ảnh về một Portal - Tìm hiểu và triển khai portal mã nguồn mở
Hình 1.1. Hình ảnh về một Portal (Trang 9)
Hình 2.1. Các portlet được ghép lại thành portal. - Tìm hiểu và triển khai portal mã nguồn mở
Hình 2.1. Các portlet được ghép lại thành portal (Trang 19)
Hình 2.2. Local Portlet - Tìm hiểu và triển khai portal mã nguồn mở
Hình 2.2. Local Portlet (Trang 20)
Hình 2.4. Mô hình WSRP cho Portal từ xa - Tìm hiểu và triển khai portal mã nguồn mở
Hình 2.4. Mô hình WSRP cho Portal từ xa (Trang 22)
Hình 2.5. Mô tả ngữ cảnh trong đó tồn tại một Portlet - Tìm hiểu và triển khai portal mã nguồn mở
Hình 2.5. Mô tả ngữ cảnh trong đó tồn tại một Portlet (Trang 23)
Hình 2.7. Trang Portal yêu cầu xử lý kịch bản - Tìm hiểu và triển khai portal mã nguồn mở
Hình 2.7. Trang Portal yêu cầu xử lý kịch bản (Trang 25)
Hình 2.8. Các giai đoạn của lộ trình xây dựng và triển khai Portal - Tìm hiểu và triển khai portal mã nguồn mở
Hình 2.8. Các giai đoạn của lộ trình xây dựng và triển khai Portal (Trang 27)
2.3.2.1. Bảng so sánh giữa J2EE và .NET - Tìm hiểu và triển khai portal mã nguồn mở
2.3.2.1. Bảng so sánh giữa J2EE và .NET (Trang 28)
Bảng 2.1. So sánh giữa J2EE và .NET - Tìm hiểu và triển khai portal mã nguồn mở
Bảng 2.1. So sánh giữa J2EE và .NET (Trang 29)
Hình 2.9. Mô hình hoạt động của công nghệ J2EE - Tìm hiểu và triển khai portal mã nguồn mở
Hình 2.9. Mô hình hoạt động của công nghệ J2EE (Trang 30)
Hình 2.10. Mô hình hoạt động của công nghệ .NET - Tìm hiểu và triển khai portal mã nguồn mở
Hình 2.10. Mô hình hoạt động của công nghệ .NET (Trang 30)
Hình 3.1. Trang chủ NukeViet.vn được xây dựng trên NukeViet 3.0 - Tìm hiểu và triển khai portal mã nguồn mở
Hình 3.1. Trang chủ NukeViet.vn được xây dựng trên NukeViet 3.0 (Trang 45)
Hình 3.2. Mô hình kiến trúc hệ thống NukeViet 3.0 - Tìm hiểu và triển khai portal mã nguồn mở
Hình 3.2. Mô hình kiến trúc hệ thống NukeViet 3.0 (Trang 46)
Hình 4.4. Cấu hình Server name  Đặt mật khẩu truy cập cho tài khoản Root: 123 - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.4. Cấu hình Server name Đặt mật khẩu truy cập cho tài khoản Root: 123 (Trang 52)
Hình 4.6. Hoàn tất cài đặt AppServ - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.6. Hoàn tất cài đặt AppServ (Trang 53)
Hình 4.8. Tạo mới cơ sở dữ liệu - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.8. Tạo mới cơ sở dữ liệu (Trang 54)
Hình 4.9. Hoàn tất tạo cơ sở dữ liệu - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.9. Hoàn tất tạo cơ sở dữ liệu (Trang 54)
Hình 4.14. Kiểm tra cơ sở dữ liệu - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.14. Kiểm tra cơ sở dữ liệu (Trang 57)
Hình 4.15. Cấu hình thông tin cho website - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.15. Cấu hình thông tin cho website (Trang 57)
Hình 4.16. Giao diện trang trủ lúc đầu - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.16. Giao diện trang trủ lúc đầu (Trang 58)
Hình 4.19. Thêm bài viết tin tức - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.19. Thêm bài viết tin tức (Trang 59)
Hình 4.22. Quản lý các nhóm tin - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.22. Quản lý các nhóm tin (Trang 60)
Hình 4.23. Cấu hình module tin tức  4.3.2.  Quản lý Banners. - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.23. Cấu hình module tin tức 4.3.2. Quản lý Banners (Trang 61)
Hình 4.33. Chọn thành viên làm quản trị  4.3.4.  Quản lý Voting. - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.33. Chọn thành viên làm quản trị 4.3.4. Quản lý Voting (Trang 65)
Hình 4.43. Nghe bài hát trên site - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.43. Nghe bài hát trên site (Trang 69)
Hình 4.42. Thêm một nhạc sỹ mới - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.42. Thêm một nhạc sỹ mới (Trang 69)
Hình 4.47. Thêm một đơn vị sản phẩm - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.47. Thêm một đơn vị sản phẩm (Trang 71)
Hình 4.58. Đóng gói một theme - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.58. Đóng gói một theme (Trang 76)
Hình 4.72. Cấu hình truyền server FTP - Tìm hiểu và triển khai portal mã nguồn mở
Hình 4.72. Cấu hình truyền server FTP (Trang 81)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w