PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
1. Định hướng đề tài tốt nghiệp
Trong thời gian thực tập tốt nghiệp và thời gian làm đồ án, em đã tìm hiểu công
nghệ Portal về các mặt: các đặc trưng, các chuẩn công nghệ, khả năng ứng dụng vào
thực tế và từ đó em đã lựa chọn công nghệ SharePoint cho bài toán xây dựng cổng
thông tin nội bộ dùng trong các doanh nghiệp.
2. Các nhiệm vụ cụ thể của ĐATN
Với định hướng đề tài tốt nghiệp như trên, các nhiệm vụ cụ thể của ĐATN như
sau:
Tìm hiểu lý thuyết chung về Portal
Các khái niệm cơ bản, các đặc trưng, cách phân loại và một số
công nghệ xây dựng Portal hiện nay
Các chuẩn xây dựng Portal: chuẩn đặc tả JSR – 168, chuẩn
WSRP và chuẩn SharePoint của Microsoft
Tìm hiểu công nghệ SharePoint trên các khía cạnh:
Windows SharePoint Services
SharePoint Portal Server
Công nghệ Web Part
Ứng dụng công nghệ SharePoint để xây dựng cổng thông tin nội bộ dùng
trong các doanh nghiệp,ở đây bao gồm các bước: đặc tả yêu cầu người
dùng, phân tích và thiết kế hệ thống sử dụng UML và triển khai.
3. Lời cam đoan của sinh viên
Tôi – Phạm Thành Vinh – cam kết ĐATN là công nghiên cứu của bản thân tôi dưới
sự hướng dẫn của ThS. Thạc Bình Cường
Các kết quả nêu trong ĐATN là trung thực, không phải là sao chép toàn văn của bất
kỳ công trình nào khác.
Hà Nội, ngày 17 tháng 05 năm 2008
Tác giả ĐATN
Phạm Thành Vinh
4. Xác nhận của giáo viên hướng dẫn về mức độ hoàn thành của ĐATN và cho phép
bảo vệ:
program also help distinguish the difference between a Portal Web and a traditional
Website.
Chapter 2: Some models for Portal building: WSRP, JSR – 168, SharePoint, this chapter
also includes comparison among models to choose the suitable model for each problem.
Chapter 3: This chapter focuses on SharePoint technology of Microsoft, all angles of this
technology presented here consist of: Windows SharePoint Services, SharePoint Portal
Server and Web Part technology; therefore we can see the feasibility of application of
SharePoint technology in order to build the internal information gate for enterprises.
Chapter 4: This chapter concentrates on the application of SharePoint technology in
building the internal information gate for enterprises. it includes such steps as user’s
demand description, system analysis, system design and operation. The building system
targets meet the essential demand of each individual in the company, for example, sharing
information and documents, job cooperation this system aims to minimizing stored papers
in administrative procedure of the company at the same time
Chapter 5: This chapter presents the conclusion about SharePoint technology and the
system which has just been built. This program also present the development orientation in
the future, that is building a new Framework raised the ideas from SharePoint.
Mục lục
Chương 1 Tổng quan về Portal 12
1.1. Khái niệm Portal 12
1.2. Phân loại Portal 13
1.2.1. Phân loại theo kiến trúc 13
1.2.2. Phân loại theo chức năng 14
1.3. Các dịch vụ của Portal 14
1.4. Giới thiệu một số công nghệ xây dựng Portal hiện nay 15
Chương 2 Các chuẩn xây dựng Portal 23
2.1. Chuẩn JSR 168 23
2.1.1. Tổng quan 23
2.1.2. Các khái niệm 24
2.1.2.1. Portal 24
3.2.2.3. So sánh kiến trúc SPS với kiến trúc WSS 50
3.2.2.3.1. Các dịch vụ của SPS 50
3.2.2.3.2. Các thành phần Front – End 52
3.2.2.3.3. Thay đổi trong các thành phần CSDL 53
3.2.2.3.4. Cấu hình vật lý 54
3.2.3. Những lợi thế của SharePoint 55
3.2.4. Mô hình đối tượng, vấn đề mã an toàn với WSS và SPS 56
3.2.4.1. Mô hình đối tượng 56
3.2.4.2. Vấn đề bảo mật với mã truy cập 59
3.3. Công nghệ Web Part 60
3.3.1. Tổng quan 60
3.3.1.1. Web Part 61
3.3.1.2. Web Part Pages 61
3.3.1.3. Môi trường cho các trang Web Part 62
3.3.2. Kiến trúc 63
3.3.3. Xây dựng Web Part 65
3.3.4. Tùy biến và cá nhân hóa các Web Part 67
3.3.5. Tương tác giữa các Web Part 68
3.3.5.1. Mô hình kết nối 68
3.3.5.2. Sinh ra các Web Part kết nối 70
3.3.5.3. Thi hành Provider 72
3.3.5.4. Thi hành Consumer 73
3.3.5.5. Thiết lập kết nối 76
3.3.5.6. Một số mô hình kết nối khác 77
Chương 4 Xây dựng Cổng thông tin nội bộ quản lý doanh nghiệp với công nghệ
SharePoint của Microsof 80
4.1. Đặc tả yêu cầu người dùng 80
4.1.1. Tìm kiếm 86
4.1.2. Xử lý công văn đến 86
4.1.3. Xử lý công văn đi 87
11 CGI Common Gateway Interface
12 IIS Internet Information Services
13 ISAPI Internet Server Application Programming Interface
14 SSL Secure Sockets Layer
15 CAML Collaborative Application Markup Language
16 ERP Enterprise Resource Planning
17 CRM Customer Relations Management
18 ACL Access Control List
19 SOAP Simple Object Access Protocol
20 WSDL Web Services Description Language
Danh mục các thuật ngữ
STT Thuật ngữ Giải thích
1 Area Nơi lưu trữ nội dung được tổ chức bởi người dùng
2 Content Database Cơ sở nội dung lưu trữ nội dung của một hay nhiều
sites
3 Document
Library
Là thư mục lưu trữ các file, mỗi file trong thư viện này
liên kết với một thông tin người dùng định nghĩa
4 Document
Workspace site
Là một Web site dựa trên mẫu Document Workspace, ở
đây các thành viên có thể thảo luận, chỉnh sửa, và làm
việc cùng nhau trên một văn bản
5 Job Server Một Server lưu trữ các công việc chia sẻ
6 List Một thành phần của Web site WSS, nó lưu trữ và hiển
thị các thông tin mà người dùng có thể đưa vào bằng
trình duyệt
7 My site Là một trang cá nhân được thiết lập trên một Portal site
8 Personal View Khung nhìn cá nhân (ứng với mỗi người dùng
quý báu trong suốt 5 năm học tập và rèn luyện tại trường Đại học Bách Khoa
Hà Nội.
Em xin được gửi lời cảm ơn đến thầy giáo Thạc Bình Cường - Giảng
viên bộ môn Công nghệ Phần mềm, khoa Công nghệ Thông tin, trường
Đại học Bách Khoa Hà Nội đã hết lòng giúp đỡ, hướng dẫn và chỉ dạy tận
tình trong quá trình em làm đồ án tốt nghiệp.
Cuối cùng, em xin được gửi lời cảm ơn chân thành tới gia đình, bạn bè
đã động viên, chăm sóc, đóng góp ý kiến và giúp đỡ trong quá trình học tập,
nghiên cứu và hoàn thành đồ án tốt nghiệp.
Hà Nội, ngày 20 tháng 05 năm 2008
Phạm Thành Vinh
Sinh viên lớp Công nghệ Phần mềm – K48
Khoa Công nghệ Thông tin - Đại học Bách Khoa Hà Nội
Lời mở đầu
Con người luôn luôn có nhu cầu tìm kiếm, trao đổi và chia sẻ thông tin! Trong
thời đại ngày nay, có rất nhiều cách để thực hiện điều đó: qua vô tuyến, qua điện
thoại di động, qua đài phát thanh, qua các hệ thống mạng máy tính mà điển hình là
mạng Internet. Chúng ta đã quá quen thuộc với hình thức trao đổi thông tin thông
qua các trình duyệt và sử dụng rất nhiều dịch vụ được cung cấp bởi các ứng dụng
Web-Based. Có thể nói các hệ thống Web-Based ngày càng trở nên phổ biến, chúng
cung cấp các dịch vụ rất đa dạng và phong phú. Tuy nhiên với các công nghệ cũ để
xây dựng nên các hệ thống Web-Base (người ta vẫn thường gọi là “Web site truyền
thống”) thì vẫn còn nhiều hạn chế, có thể nêu ra một số vấn đề hạn chế sau:
• Quá tải thông tin, người dùng phải duyệt qua một lượng thông tin khổng lồ
mới tìm thấy những thông tin mà họ cần
• Khó trong phát triển kế thừa và khả năng ghép nối để mở rộng, khó tích hợp
nội dung thông tin và dịch vụ
• Khả năng hợp tác và chia sẻ thông tin
• Vận hành và bảo trì hệ thống
• Khả năng tùy biến cá nhân hóa
Cổng giao dịch điện tử: Là bước kế thừa của cổng giao tiếp điện tử nhưng có
thêm các giao tiếp về thương mại, các dịch vụ trực tuyến,… để hướng tới một “xã
hội điện tử”. Cổng giao dịch điện tử còn thực hiện các chức năng giao dịch với các
nhà cung cấp dịch vụ khác, các cổng giao dịch khác một cách tự động thông qua các
dịch vụ công nghệ bên dưới hoàn toàn trong suốt với người dùng.
Sau đây ta sẽ liệt kê một số định nghĩa về Portal do các tác giả khác nhau, các
tổ chức khác nhau đưa ra; các định nghĩa chỉ mang tính tương đối, chúng bổ sung
cho nhau và càng làm chính xác thêm khái niệm Portal:
“Một Web Portal là một môi trường động thông minh có thể cung cấp các tài
nguyên và thông tin được cá nhân hóa cho từng người riêng biệt với những vai trò,
sở thích, quyền khác nhau…Tùy thuộc vào độ phức tạp của thiết kế, một Web
Portal có thể cung cấp các mức độ cá nhân hóa và phân loại hóa khác nhau cho
những nhóm người dùng riêng lẻ khác nhau”.
“Đối với một số người, các Portal thể hiện các cộng đồng; đối với một số
khác, chúng là những trung tâm buôn bán hay các thị trường điện tử; và đối với
nhiều người, chúng là những môi trường desktop tích hợp. Từ khía cạnh công nghệ
Nội dung chính sẽ trình bày:
Khái niệm Portal
Phân loại Portal
Các dịch vụ của Portal
Một số công nghệ xây dựng Portal hiện nay
hợp nhất, một Portal là một điểm truy cập tích hợp duy nhất, toàn diện, thống nhất
và hữu ích vào thông tin (dữ liệu), các ứng dụng và con người”
“Portal là một ứng dụng dựa trên Web (Web-based) cung cấp khả năng cá
nhân hóa, tập hợp nội dung từ nhiều nguồn khác nhau, dịch vụ truy nhập đơn nhất
vào các nguồn tài nguyên phân tán trên mạng. Ngoài ra Portal còn cung cấp cơ sở
hạ tầng cho tầng trình diễn của một hệ thống thông tin triển khai nó”.
“Portal là một phần mềm ứng dụng cung cấp một giao diện mang tính cá
nhân hóa cho người dùng. Thông qua giao diện này, người sử dụng có thể khám
phá, tìm kiếm, giao tiếp với các áp dụng, với các thông tin, và với những người
chủ đề, một đối tượng đặc biệt, tuy nhiên công nghệ áp dụng vào các Vertical Portal
cũng giống như Horizontal Portal. Vertical Portal cung cấp các dịch vụ cho các
cộng đồng chuyên biệt về một lĩnh vực nào đó, do vậy khách hàng của nó là diện
hẹp. Theo đánh giá hiện nay trên thế giới, Vertical Portal là loại hình portal có tốc
độ phát triển nhanh nhất. Vertical Portal lại được chia nhỏ thành 3 loại sau:
Coporate Portal, Commerce Portal, Pervasive Portal.
Coporate Portal: Cung cấp các khả năng truy cập cá nhân để lấy thông
tin từ một công ty nào đó. Khả năng chính của Portal này là có thể
chứa nhiều loại thông tin khác nhau (có cấu trúc, không cấu trúc),
tương tác cộng đồng, hợp tác, tích hợp các phần mềm ứng dụng doanh
nghiệp, tích hợp các giải pháp nguồn nhân lực ERP (Enterprise
Resourrce Planning).
Commerce Portal: Hỗ trợ thương mại điện tử theo 2 mô hình B2B và
B2C
Pervasive Portal: Hỗ trợ truy cập thông qua các thiết bị di động (PDA,
smart phone,…). Kiểu này sẽ rất phát triển trong tương lai cùng với sự
phát triển nhảy vọt của công nghệ không dây.
1.2.2. Phân loại theo chức năng
Portal được phân ra thành 4 loại khác nhau theo mục đích sử dụng và theo
chức năng.
Coporate Portal: Còn được gọi là B2E portal hay Intranet Portal.
Các Portal loại này được thiết kế cho quá trình xử lý B2E (Business to
Employee), các hoạt động để phát triển quá trình truy cập, xử lý, chia
sẻ thông tin.
e-Business Portal: Còn được gọi là Extranet Portal. Chúng được
thiết kế cho mô hình B2C, B2B, cho các thị trường thương mại điện
tử
Personal Portal: được cung cấp giống như Yahoo, Excite và
Netscape, cung cấp cho các người dùng một điểm truy cập đầu tiên,
được tùy biến vào Web. Các Portal cộng đồng là một biến thể khác
khoá hoặc tổ hợp các từ khoá.
Bảo mật (Security): đây là vấn đề sống còn cho một web portal.
Portal phải cung cấp một phương pháp xác thực và điều khiển người
dùng truy cập thông tin và ứng dụng.
1.4. Giới thiệu một số công nghệ xây dựng Portal hiện nay
Hiện tại trên thế giới có rất nhiều sản phẩm/giải pháp Portal được xây dựng
trên nhiều ngôn ngữ/công nghệ khác nhau. Tuy nhiên các giải pháp xây dựng portal
hàng đầu hiện nay hoặc dựa trên tiêu chuẩn J2EE chạy trên máy chủ như
WebSphere của IBM, hoặc theo mô hình của WebLogic của BEA, hoặc là chuẩn
.Net của Microsoft. Ngoài ra cũng có thể sử dụng kết hợp các giải pháp với nhau
nhưng cho dù portal được xây dựng từ giải pháp nào đi nữa thì nó cũng phải đảm
bảo các yếu tố như có khả năng tích hợp, tùy biến cá nhân hóa, quản trị nội dung,
bảo mật Có 3 hình thức xây dựng portal :
• Hình thức phổ biến nhất là xây dựng portal trên cơ sở một bộ phần mềm hệ
thống chuyên dùng, từ chuyên môn gọi là APS - Application Platform Suite.
Bộ phần mềm APS thường có tối thiểu 3 thành phần chính : Bộ phần mềm
phát triển ứng dụng cho máy chủ, cơ chế tích hợp hệ thống do công ty sản
xuất phần mềm xây dựng và phần mềm Portal. Các sản phẩm Portal do BEA,
IBM, Oracle, Sun và Microsoft sản xuất thuộc loại này. Sử dụng APS để xây
dựng Portal có thuận lợi là tận dụng được các chương trình phần mềm đang
vận hành tốt trên hệ thống cùng hệ thống cơ sở dữ liệu sẵn có nhưng điều
này lại trói chặt người sử dụng vào mô hình phát triển Portal của công ty sản
xuất phần mềm cụ thể .
• Hình thức tiếp theo là định hướng lại dòng luân chuyển thông tin của tất cả
các hệ thống ứng dụng hiện có trong doanh nghiệp thông qua một ứng dụng
Portal đã xây dựng sẵn. Vignette và Plumtree là sản phẩm thuộc dạng này.
Đi theo hình thức này, doanh nghiệp tuy mất đi khả năng quản trị hệ thống
thống nhất từ một đầu mối nhưng lại được tự do chọn lựa các ứng dụng chạy
trên máy chủ cùng các chương trình phần mềm chuyên dụng .
• Hình thức cuối cùng là triển khai Portal theo hướng sử dụng hệ thống phần
triển cũng sử dụng phần mềm này để xây dựng các trang web định dạng, kết nối và
truy xuất dữ liệu từ SQL 2000. Người phát triển cũng có thể sử dụng bộ công cụ
Visual Studio .Net để xây dựng hệ thống và các chương trình chức năng chạy trên
server sử dụng công nghệ .Net được đặt tên là Web Parts. Về chức năng bảo mật,
SharePoint cũng cho phép người sử dụng thực hiện thủ tục đăng nhập 1 lần duy
nhất trong phiên làm việc .
Nhìn chung, sản phẩm có những ưu điểm nổi trội vì nó tích hợp tốt với các
sản phẩm làm việc dành cho người sử dụng cũng như các công cụ phát triển hệ
thống và cơ sở hạ tầng của Microsoft.
BEA WEBLOGIC PLATFORM 8.0
Bộ phần mềm gồm 3 sản phẩm: WebLogic Portal, WebLogic Server,
WebLogic Workshop và sản phẩm tùy chọn WebLogic Integration. WebLogic
Platform (WP) làm thành một môi trường hoàn hảo để xây dựng portal và các ứng
dụng chạy trên môi trường quy mô lớn. Người phát triển hệ thống cũng có thể sử
dụng các công cụ lập trình quen thuộc để xây dựng chương trình rồi tích hợp lên hệ
thống bằng các chương trình dịch vụ Web có sẵn trong WP. Công cụ quản trị hệ
thống dùng giao diện web nên bất cứ ai cũng có thể sử dụng để cấu hình portal chỉ
cung cấp những thông tin cần khai thác, loại bỏ (che đi) các thông tin không cần
thiết .
Bộ phần mềm này cung cấp đầy đủ các chức năng cần thiết để xây dựng
portal như tổng hợp thông tin, tìm kiếm thông tin theo yêu cầu và một số chức năng
phục vụ thương mại điện tử Chức năng WebLogic Integration Server của BEA giao
tiếp rất tốt với nhiều phần mềm chức năng do các công ty sản xuất phần mềm thứ ba
xây dựng và cả hệ thống máy chủ .
Công cụ phát triển ứng dụng của WP là phần mềm có tên WebLogic IDE,
phần mềm này có khả năng dò tìm, phát hiện tất cả các chương trình chức năng xây
dựng bằng Java để người phát triển hệ thống khai thác, sử dụng. Có chức năng tạo
profile cho từng người sử dụng nên mỗi người chỉ cần thực hiện đăng nhập 1 lần,
còn hệ thống tự động quản lý phiên làm việc và chuyển giao các thông tin cần thiết
khi có yêu cầu, nhất là khi truy cập vào các hệ cơ sở dữ liệu. Phần mềm WebLogic
thuộc lẫn nhau giữa các công cụ rất chặt chẽ. Và cũng chính vì quá lệ thuộc lẫn
nhau nên khi muốn thay thế một công cụ của Oracle bằng công cụ của các hãng thứ
ba để mở rộng chức năng sẽ rất khó khăn và phức tạp .
Các portlet có sẵn trong OracleAS Portal cho phép sắp xếp và phân cơ chế
bảo mật hệ thống thành nhiều cấp độ khác nhau cho từng trang web một. Việc làm
này tạo thuận lợi để chia sẻ, phân công nhiệm vụ quản trị hệ thống cho nhiều người
cùng tham gia quản trị. Do bộ phận Application Server có quá nhiều thành phần
chức năng nên chính bản thân phần mềm phải tự đảm nhận các chức năng thiết yếu
để đảm bảo hệ thống có cấu trúc cây thư mục và yêu cầu quản lý như Oracle quy
định. Nếu muốn sử dụng các phần mềm bảo mật khác thì người quản trị phải tự
mình quản lý số ID cho các sản phẩm không phải do Oracle sản xuất .
Thủ tục khởi tạo một portal trong Oracle rất nhẹ nhàng, không cần lập trình.
Mọi thủ tục cần thiết được thực hiện nhờ sự giúp đỡ, hướng dẫn của một trình
wizard cùng các chức năng tiện ích đã có sẵn trong sản phẩm .
Tương tự như sản phẩm của IBM và Sun, OracleAS Portal 10g cũng có chức
năng xuất thông tin lên trang web dành cho thiết bị di động. Ngoài ra, sản phẩm
cũng hỗ trợ hơn 28 ngôn ngữ khác nhau và có thể dịch nội dung từ ngôn ngữ này
sang ngôn ngữ khác.
Phương thức xuất bản nội dung lên portal cũng rất phong phú, ví dụ như
dùng tiện ích WebClipping để hiển thị thông tin của một trang web nào đó và các
thông tin này có thể được một portlet khác dùng để hiển thị dưới dạng đồ thị thay
cho dạng văn bản mà WebClipping vừa cung cấp. Việc xây dựng và chuyển giao dữ
liệu giữa các portlet cũng rất dễ dàng và hầu như không cần lập trình. Thủ tục thêm
bớt các tập tin HTML và JSP vào portal cũng như vậy. Việc tìm kiếm và tích hợp
dữ liệu từ các nguồn không phải là Oracle được thực hiện nhờ web dịch vụ và một
vài chương trình hệ thống có sẵn trong sản phẩm.
Về chức năng lập trình phát triển hệ thống, Oracle cung cấp các công cụ như:
OracleAS Integration dùng để xây dựng các portlet giao tiếp với SAP, PeopleSoft,
Siebel và một số cơ sở dữ liệu cao cấp khác; Oracle JDeveloper 10g để xây dựng
các ứng dụng Java theo tiêu chuẩn J2EE. Cũng phải kể đến thư viện có hơn 400
An toàn hệ thống là một trong những thế mạnh của Sun, JSPS 6.2 sử dụng cơ
chế bảo mật LDAP và tiêu chuẩn bảo mật, quản lý tài nguyên Liberty Alliance 1.1.
Hệ thống portal xây dựng bằng JSPS 6.2 chỉ yêu cầu người sử dụng đăng nhập một
lần trong suốt quá trình khai thác thông tin, cho dù thông tin phân bố trên nhiều
portal khác nhau và do nhiều hệ điều hành, lớp dịch vụ khác nhau cung cấp. JSPS
cũng cung cấp cơ chế xây dựng cổng truy cập từ xa có bảo mật để tổ chức và xây
dựng các mạng riêng ảo theo mô hình VPN.
Không ôm đồm công việc quản trị hệ thống cho chỉ một người quản trị duy
nhất, JSPS sắp xếp và phân loại nhiệm vụ quản trị hệ thống theo chức năng để có
thể phân quyền quản trị hệ thống cho nhiều người cùng tham gia. Cơ chế quản lý
nội dung cũng rất chuyên nghiệp để trình bày thông tin theo nhu cầu và sở thích của
từng cá nhân khai thác thông tin.
Nhờ tuân thủ các bộ tiêu chuẩn JSR 168 và J2ME nên JSPS cũng có thể cung
cấp thông tin trên những thiết bị di động, cầm tay. Nhưng chính việc hỗ trợ quá
nhiều loại hình cung cấp thông tin, chú trọng nhu cầu từng cá nhân làm cho thủ tục
quản trị hệ thống, phân phối chức năng, thiết lập quy tắc cung cấp thông tin trải
rộng lên toàn bộ hệ thống, vô hình chung khiến cho quy trình vận hành của hệ thống
trở thành rối rắm.
Trong sản phẩm JSPS cũng được Sun tích hợp sẵn nhiều chương trình con
đảm nhiệm chức năng giao tiếp với các hệ thống thông tin hiện có trên thị trường
như Lotus Notes/Domino hay Microsoft mail và các chức năng làm việc nhóm như
thảo luận nhóm (forum), tìm kiếm thông tin hay phát sinh bản tin điện tử theo yêu
cầu Nội dung thông tin cung cấp được trình bày dưới nhiều định dạng phong phú
nhờ tuân thủ các tiêu chuẩn xây dựng nội dung trên J2EE như FatWire Content
Server, Intergrated Search
Việc giao tiếp giữa phần mềm portal với hệ thống cơ sở hạ tầng như hệ quản
trị cơ sở dữ liệu, thư tín điện tử do phần mềm của Sun đảm nhiệm, tuy nhiên nếu
cần, người xây dựng hệ thống có thể sử dụng phần mềm do các công ty khác sản
xuất.
Quá trình thử nghiệm cho thấy việc cài đặt và triển khai hệ thống hết sức dễ
Nhưng Vignette Application Portal hơi kém cỏi hơn các sản phẩm khác về
khả năng cá thể hóa thông tin cung cấp cho từng người sử dụng một. Muốn khắc
phục nhược điểm này, người quản trị hệ thống phải tự mình thực hiện thủ tục cấp
hoặc thu hồi quyền truy cập từng portlet một cho từng người sử dụng. Còn nhìn
chung các portlet hiện diện trong sản phẩm cũng ngang bằng với các sản phẩm khác
trong bài viết này.
Vignette Application Portal hỗ trợ một loạt các ứng dụng hệ thống, hệ quản
trị cơ sở dữ liệu, hệ điều hành khác nhau và cả sản phẩm ứng dụng của các hãng sản
xuất phần mềm thứ ba.
Giải pháp PORTAL dựa trên nền mã nguồn mở
Không phải mọi portal nào cũng đều phải xây dựng từ những bộ phần mềm
thương mại, mặc dầu khi chọn sử dụng các bộ phần mềm thương mại thì người sử
dụng có đủ mọi công cụ và chức năng cần thiết, nhận được sự hỗ trợ đầy đủ nhất từ
phía công ty sản xuất phần mềm. Chúng ta hoàn toàn có thể xây dựng được các
portal dựa trên các phần mềm mã nguồn mở .
Metadot là một phần mềm xây dựng portal mã nguồn mở, phân phối theo
tiêu chuẩn GNU. Metadot được thiết kế trên mô hình LAMP (Linux, Apache,
MySQL, PHP/Python/Perl) hoạt động trên nền của hệ điều hành Linux, thành phần
bao gồm Apache Web server, cơ sở dữ liệu MySQL và ngôn ngữ lập trình Perl.
Nhưng vì Perl có thể chạy trên nền hệ điều hành Solaris, Windows và ta có thể thay
thế cơ sở dữ liệu MySQL bằng Oracle, nên hoàn toàn có thể dùng Metadot để xây
dựng portal trên nền các hệ điều hành khác .
Metadot phiên bản 6 có nhiều chức năng chuyên nghiệp như: Cơ chế sử dụng
mật khẩu và kiểm soát sự thay đổi nội dung, lần phát hành văn bản khi nạp lên hệ
thống hay tải về sử dụng; Thông điệp trao đổi giữa người sử dụng trong portal thuộc
loại có thể trình bày được; Khả năng xây dựng nhóm thảo luận để mọi người trong
nhóm cùng trao đổi thảo luận công việc; Khả năng triển khai cơ chế bảo mật LDAP
để quản trị người sử dụng; Xuất nhập dữ liệu bằng công nghệ XML. Phiên bản này
cũng cung cấp các API để xây dựng các chức năng mới cho portal khi cần thiết .
Nhược điểm của Metadot là chưa có công cụ thiết kế mạnh tích hợp trong
phong phú của công nghệ. Mỗi công nghệ như vậy thường được xây dựng trên một
chuẩn đặc tả nhất định, ta sẽ làm sáng tỏ điều này trong chương kế tiếp.
Chương 2 Các chuẩn xây dựng Portal
Hiện nay trên thế giới chưa có một chuẩn nào thống nhất và chung nhất về kiến
trúc Portal. Các chuẩn Portal dưới đây là do các tổ chức phát triển Portal công bố
dựa trên kiến trúc Portal mà họ xây dựng. Ta sẽ đề cập đến 3 chuẩn: Java Portlet
API, Microsoft.NET, WSRP
2.1. Chuẩn JSR 168
Trong phần này ta sẽ đi tìm hiểu khá kĩ chuẩn JSR 168 để sau đó khi tìm
hiểu về chuẩn .NET ta sẽ thấy rằng: tuy các chuẩn với các tên gọi khác nhau, các
thành phần mà chúng đặt ra trong đó với tên gọi khác nhau nhưng giữa chúng vẫn
có một sự “ánh xạ ngầm” về tính tương đồng giữa các tên gọi.
2.1.1. Tổng quan
Do sự gia tăng nhanh chóng về số lượng Portal, nhiều hãng đã tạo ra các
APIs khác nhau cho các thành phần portal, gọi là portlet. Sự đa dạng các giao diện
không tương thích nhau làm nảy sinh vấn đề cho các nhà cung cấp ứng dụng, khách
hàng portal, các hãng portal server. Để vượt qua những vấn đề này, JSR 168 (Java
Specification Request 168), đặc tả portal bước đầu cung cấp sự liên hoạt động giữa
các porlet và portal .
JSR 168 định nghĩa portlet như các thành phần web dựa trên Java, được quản
lý bởi một portlet container, container xử lý yêu cầu và sinh nội dung động. Portal
sử dụng các portlet như thành phần giao diện người dùng có thể tích hợp được, nó
cung cấp một tầng trình diễn cho hệ thống thông tin .
Mục đích của JSR 168 là:
• Định nghĩa môi trường thực thi, hay chính là Portlet container, cho
các Portlet.
• Định nghĩa API giữa các Portlet container và các Portlet.
• Cung cấp các cơ chế để lưu giữ các giữ liệu tạm thời và lâu dài cho
các Portlet.
• Cung cấp kỹ thuật cho phép các portlet chứa các servlet và JSP
Trang portal tự bản thân nó trình diễn một tài liệu đánh dấu và tập hợp một vài
cửa sổ portlet. Trang cũng có thể chứa một vài navigation và banners. Một cửa sổ
portlet chứa một thanh tiêu đề, trang trí và nội dung được cung cấp bởi portlet. Sự
trang trí có thể gồm các nút để thay đổi trạng thái và chế độ của portlet.
Hình vẽ 2.2: Một trang theo chuẩn JSR-168
2.1.2.3.Portlet và Portlet Container
Portlet là các khối xây dựng cơ bản trong hầu hết các khung Portal (Portal
Framework), chúng là các thành phần giao diện người dùng để xử lý các yêu cầu và
tạo ra các nội dung mang tính chất động. Các Portlet được thực thi trong 1 môt
trường được gọi là Portlet Container. Các Portlet trình diễn nội dung trong một cửa
sổ trên trang Portal như hình sau.