Danh mục các thuật ngữ 1 Area Nơi lưu trữ nội đung được tô chức bởi người đù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 La
Trang 1PHIẾ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á †SR.— 168, thuận WSRP va chuan SharePoint cia Microsoft
* Tìm hiểu công nghé SharePoint trén cd@khfacanh:
> Windows SharePoint Servicés
> SharePoint Portal Server
> Công nghệ Web Part s* Ứng dụng công nghệ SharếPồint để xây dựng công thông tin nội bộ dùng trong các doanh nghiệp;ở đâế 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 sinhxviên
Tôi —- Phạm Thành Vĩnh > cam két DATN là công nghiên cứu của bản thân tôi đưới
sự hướng dẫn cửa ThS.(Thậc Bình Cường
Các kết quá riệu tong ĐATN là trung thực, không phải là sao chép toàn văn của bất
kỳ công tfnh.nào khác
Hà Nội, ngày I7 tháng 05 năm 2008
Tac gia DATN
Pham Thanh 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 va cho phép
bảo vệ:
Hà Nội, ngày thang 05 nam2008 Giáo viên hướng dân Ths Thạc Bình Cường
Trang 2TOM TAT NOI DUNG DO AN TOT NGHIEP
Đồ án tốt nghiệp bao gồm 5 chương, nội dung chính của từng chương như sau:
Chương I: Trình bày những nét tổng quan về Portal như: khái niệm về Portal, cách phân loại, một số cơng nghệ xây dựng Portal hiện nay; từ đĩ giúp ta nhận biết được khả năng ứng dụng to lớn của Portal vào một số bài tốn cụ thê như: cơng thơng tin nội bộ cho các tơ chức doanh nghiệp, bệnh viện, trường học Chương này cũng nhằm giúp phân biệt sự khác nhau giữa một Web Portal và một Web site truyền thống
Chương 2: Dé cap đến một số chuẩn xây dựng Portal: WSRP, JSR — 168, chuẩn SharePoint; phan nay ciing so sanh các dạng chuân với nhau từ đĩ thầy được với mơi loại hình bài tốn khác nhau thì nên sử dụng chuân nào cho phủ hợp
Chương 3: Tập trung trình bày về cơng nghệ SharePoint của MicroSoft, ếc khía đạnh của cơng nghệ này sẽ được trình bày ở đây bao gồm: Windows ShatePoint` Services, SharePoint Portal Server và cơng nghệ Web Part; từ đĩ thấy được tínầ.khả thi của việc ứng dụng cơng nghệ SharePoint để xây dựng cơng thơnf tin nội bộ cho dĩành nghiệp
Chương 4: Trình bày về ứng dụng cơng nghệ ShárePoimt trong Việc xây dựng cơng thơng tin nội bộ cho doanh nghiệp, các bước thực hign bao gom dic ta yéu cau nguoi ding, phan tich hé théng, thiết kế hệ thống và triển khại Hệ thống xây dựng nhằm hướng đến nhu cầu thiết thực của mỗi cá nhân trong cơng ty như: chia sé thống tin và tài liệu, khả năng hợp tác trong cơng việc, đồng thời hệ thống-nhằm.Hướng đến việc giảm thiêu các loại giây tờ cần lưu trữ trong các thủ tục hành chính của cơng ty
Chương 5: Trình bày những kết luận về ơng nghệ SharePoint, về hệ thống vừa xây dung
và cũng trình bày về hướng phát triển tiếp theo trong tương lai
Trang 3ABSTRACT OF THESIS
Granduation thesis includes five chapters, concrete as follows:
Chapter 1: Overall look about Portal, such as, conception of Portal, ways of categorizing, some current Portal engineering technology Then we can realise the abilitiy to apply Portal to some specific problems as: internal Portal for companies, hospitals, school this 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 ea€h: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 fortenterprises
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 eachindividual inthe company, for example, sharing information and documents, job cooperation\this, system aims to minimizing stored papers
in administrative procedure of the company at thesame 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 anew Framework raised the ideas from SharePoint
Trang 4Mục lục
PHIẾU GIAO NHIỆM VỤ ĐỎ ÁN TÓT NGHIỆP 5555555 <+s2 1 TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP -G S1 red 1
ABSTRACT OF THESIS cccccccccscsssssccecceessssneeececcssesseneeseeesssseaneseeeesseeeseaaees 3 Muc luc 4
Danh mu Cac Dang o 0 7 )ì )1.8./)) 00v 11): 0, 00171555 Ề5 8 Danh muc cdc tir Viét tat cece ccc ccececeecscseecececscsseesesssececavseuesessevevecseseanenes 9 Danh muc Cac thuat mpi e Ả 10
Loi mé dau 12
Chuong1 Tổng quan về Portal - 5-55 csxsxzszse<+sz-€ê lễ c- reer Meese 13
1.1 Khái niệm Portal - - -.ố60Öề,.sà lề ciỀUc 13 1.2 Phan loai Portal - 14 1.2.1 Phân loại theo kiến trúc cccccc ca KẾ con cccCỀỄ ca HE cc sec se rrea 14
1.2.2 Phân loại theo chức năng .-:à ‹es Ềx HỒ: nen 15
1.3 — Các dịch vụ của POrtaÌ - 2c ccc VỀN con 3 5n nh nh ket 15
1.4 Giới thiệu một số công nghệ xây dựấg Portal hiện tay 16 Chương2 Cac chuẩn xây dựng Portalồù .ế à, -Ằ - sec cv re 24
2.1 Chuẩn JSR 168 LẦM, SỀxS 0 no chctchnt HH erererererrred 24
2.1.2.5 \\ Phiém 6c 0n 29
2.2 Chuẩn WSRP H HH kgruie 29
2.2.1: WONG Quan eee - - ch H* E1 TT T1 TT HT TT nhưng 29 2.2.2 ›`So sánh JSR — 168 và WSRP con HH nh ren 31
2.3 ` Chuẩn Microsoft NET c.cccccccccccccscsccscececcecescecsecscsccecscescseesesceucaeaeeacecees 32
Chường 3› Công nghệ SharePoint( - Q0 0001 1n n HH nhu 34
3.1 ¬› Microsoft Windows SharePoint S€rVIC€S .- - << ca 34
3'1.1 Tổng quan G- St SE 1 11H rku 34
3.1.2 Kiến trúc của Windows SharePoint Services c-sc<scese 35
3.1.4 Cấu hình cho Windows SharePoint Services .:cc:cscsscsesereeseeeeses 40 3.1.4.1 Stand-alone S€TV€f - CS HH nh re 40 3.1.4.2 — S€TVe€r Íarm -c- SH ng vn rà 40
3.1.4.3 Máy chủ ao và các Web site IIS c ST Sàn 41
3.1.4.4 — Sites và Site ColÏeCtIOfAS c-cGĂ SH xe 42
3.1.5 Bảo mật trong Windows SharePoint SerVIC€§ - cà cS + 44
3.2 SharePoInt Portal Server 2002 - - - Ăn s Sex xe 46
3.2.1 Tổng quan G- LH 51 1kg ng ri 46 3.2.1.1 Khả năng tích hợp - T011 0011111111111 xxx 47 3.2.1.2 Khả năng hợp tác TQ HH1 xu 48
Trang 53.2.1.3 Khá năng tùy biến cá nhân hóa ¿+ 2 +s+szs+z+x+scsz 48
3.2.2 _ Kiến trúc SharePoint Portal SerVer - + + 2+ s+ksEkerereeee 48
3.2.2.1 Tổng quan - 2C kSEEESESkSSS2 1E Exrkrrrkrre 48 3.2.2.2 Kiến trúc máy chủ Web c+c ch He 50
3.2.2.2.3 My Site và Personal S1{©§ -ĂcS Sàn sen 51
3.2.2.3 So sánh kiến trúc SPS với kiến trúc WSS « 51
3.2.2.3.1 Các dịch vụ của SPS LH nH HH nh 51
3.2.2.3.2 Các thành phần Front — End - sex rxrerees 53
3.2.2.3.3 Thay đổi trong các thành phần CSDL .- <5: 54
3.2.2.3.4 Cấu hình vật lý - <3 11H kg 55
3.2.3 Những lợi thế của SharePoint ¿+ + x+x£E sex zzsrsred 56
3.2.4 Mô hình đối tượng, vẫn đề mã an toàn với WSS và SPS `à 57 3.2.4.1 Mô hình đối tượng -c-cc.c 28x SỀ, IỀN 57 3.2.4.2 _ Vấn đề bảo mật với mã truy cập É: Ềx.ề à 60
3.3.1 Tổng quan ee ccccccccc co VỆ cà Lọc ră 61 3.3.1.1 Web PAarẨ( cccccc CỒ V c CIẦN uc ỒN Mu HH 62 3.3.1.2 Web Part Pages Öà và sầu ẤT LH HH 62 3.3.1.3 Môi trường cho các trang Web Parfà - co cà 63
3.3.2 Kiến trúc ấ Ề, t LIỀN nh nen 64
3.3.3 Kay dung Web Par( Ế, ầà è, sÀ c co Q TQ nhe 66
3.3.4 Tùy biến và cá nhận:hóa các Wèb Part S5 cv reở 68
3.3.5 Tương tác¿ø1ữa các Web Part Q nnnnss Hs ren 69
3.3.5.1 Mô hìnRikẾthối ààìcccieeeiierrrerrres 69
3.3.5.2 Sinh racáe›Web Pãft kết nối - CS strrrerekd 71 3.3.5.3 THÍ hành PrOVIder -G SG QS IS ng ve 73 3.3.5.4 ¿_ Thĩ hành.CØfñsumer - 2 2222221111111 111111 1155511554 74
3.3.5.5 'Thiết lập kếtnối - - TT E11 TT 21 1xx 71 3.35;6 àMột®§ô mô hình kết nối khác +: 5cc+c+ccc>cvzxsrxee 78
Chươn844 ` Xây đựng Công thông tỉn nội bộ quản lý doanh nghiệp với công
HH ÁN) )X)51)1001000// 8/0040) 0200007015888 81
ATA “Dac ta yeu cau ngudi MUNG cece cece csesescecececscsssceecsescevavssessanees 81 AUD L © Tir iG oe eeseeceeeseeseeneeeceseesecnecseesceeceseeseeaeeensansenseeeeeeeeeseeaeenen 87 4.1.2 Xử lý công văn đến -< LH S31 ST g1 HH tre 87
4.1.3 Xử lý công văn ổI ĐH xà 88
mm" àa nh 93 4.2.5 Nhập mã công văn đến vào Portal -. + s+s++x+xzEzezxzexerereree 93 4.2.6 Thông báo cho người có thâm quyên giải quyết công văn đến 94
4.2.7 _ Văn thư nhận thông báo từ nơi khác gửi đến 5xx se 94
Trang 64.2.8 Người có thâm quyền duyệt nội đung công văn: - 5-5 +: 94
4.2.9 _ Trưởng bộ phận chỉ định cán bộ chuyên trách dự thảo công văn: 94 4.2.10 Nhận bản dự thảo từ cán bộ chuyên trách . -« «<- 95
4.2.11 Trinh tong giám đốc ký đuyệt - 5s cs++E+E+EzErererererecee 95 4.2.12 Thông báo cho văn thư có công văn cần gửi ổi 5 95 4.2.13 Yéu cau bản mềm từ cán bộ được ủy quyên - 55-55: 96 4.2.14 Nhận bản mềm từ cán bộ ủy quyÈn: s- se sezeee sex see 96 4.2.15 Ghi số công văn đi vào Portal -s-sce++E+E+Ezerererererecee 96
4.2.16 Tạo thư mỤC -c c cọ ST nh nh ch 97 4.2.17 Chon thu MUC ccc ccccccscecccescecceusesceuscccscusecscucsecseuucescueneceueuenees 97
A219, Tải ảnh: - cv TH nọ ng ni ng vn 97
4.2.20 Hién thị ảnh: cc ct c ctecrtertevyZEkcrrrrererrrree 97
4.2.21 Bình chọn ảnh: . - -c<<ccccs.<cc/ỂỀ Ề c 97 4.2.22 010991005401 -d ÁA 97
4.3 Thiết kế hệ thống -c-c<c.ccc Tất c TM LẦN 98 4.3.1 Biểu đồ lớp của hệ thống Ế: 'Ằ% lầu VỀ QUẦY, Q o.co 99 4.3.2 Biểu đồ trình tự cho hiển thị kết quả tìm kiểm lấ 99
4.3.3 Biểu đồ trình tự cho Use case đăng hiÍậRù lều c5 Set 99 4.3.4 Biểu đồ trình tự cho Use case nhập:mã›công văn đến vào Portal 100
4.3.5 Biểu đồ trình tự cho Use case_ chúc mừng sinh nhật 100
4.3.6 Biểu đồ trình tự đặt cơm trữa xầy cào cterversrerrrrrrkee 101
4.3.7 Biểu đồ trình tự chấm đổñg `è à `Ế ĂC HS, 102
4.4 Triển khai ‹ết v LỆ treo 102
Chương 5 Kết luận và hướng phát triển - 5S se £sEeEeveererxe 105
5.1 Kết luận về ShafePolồt - (QC S St ST n HH ng rreez 103
5.1.1 ƯuUđiểm.i.¿ à Ệ sà ààà.àĂc c2 té né HH HH ri 103 5.12 Nhượơđiểm ›à è àà.iititirirrerrrerree 104 5.2 _ Đánh giá về đỖ ẩn :ÌÊ LĂ SH HH1 E11, 104
5.2.1 Những việc đã làm được . - nàn nen re 104
5.2.26 NHững kñó khăn và hạn chế - - tk sEsrrererxrke 105
5.3 '» Hướng phất triÊn - - HH TT HT HT TT TH 105
Trang 7Danh muc cac bang
Cac bang trong CSDL nội (MP ào ST TS xen xen 38 Các bảng trong CSDL cấu hÌnh, - set SE rerrk ri 39 Các thành phần CSDL của SharePOlWI + 5s Se+sk+E+Esererrererecee 55 Các không gian tên trong mô hình đối tượng của SharePoii 60 Các cặp giao diện provider/consumer thông dụng « - 78 Các giao điện chỉ dùng cho FrontPage 2003 - << << <3 79 Các giao diện biến thể bên IFONE 5< 22 +k+EEzESESEeErErkrerrecee 79 Các giao diện hỗ trợ các kịch bản kết nỗi xuyên trang . 80 Bảng phân đoạn công việc cho “Xử lý công văn đến ” Ế -À 84 Bảng phân đoạn công việc cho “Xử ]ý công văn đi ”” âê: è -ề» 86
Trang 8Danh mục các hình vẽ
Hình vẽ 2.I: Kiến trúc cơ bản của một portal theo JŠR-166 - 5 + Sc se set, 25 Hình vẽ 2.2: Một trang theo chuẩn JŠR- Ï 68 St k TS TK EE1 2151111 E111 ru 26
;//1/À.-025100.s0u././ 00nnnnnẺnnhốốốẦẦ 27
Hình vẽ 2.4: Vai trị của Porflef COHIÍQÏHF Ác tt tk vn xà 28 Hình vẽ 2.5: Hoạt động của POortdÏ Š€YV€F tt ng TK ng xà 28 Hìmh vẽ 2.6: VỊ trí làm việc của PorfẠ S@TV€FF - - - cv hà 28 Hình vẽ 2.7: Chuẩn WSRP c:Scc ST SEhhhTHAHtHHHH gu 30 Hinh vé 2.8: Portal đĩng vai tro là một WSRP COWSHIH€F ào Ă Ssesssvkss 31 Hinh vé 3.1: Kién tric Windows SharePoint Services .ccccccccssssssssscsessscssesssvsssssesesesesen 35 Hinh vé 3.2: WSS cần một CSDL cấu hình và một hoặc nhiều CSDL nội dụm8ày, 36
Hình vẽ 3.4: Khung nhìn mức cao về WSS - cccccceeeeceeeec.ỂƯƯNU, Ầ 37
Hình vẽ 3.5: Cấu hình WSS theo kiểu Stand-alone -.<4gxx iu ỀN, VỀ, 40
Hình vẽ 3.6: Cấu hình Windows SharePoint Services theo kiểu serVer ƒđầNì -à 41
Hình vẽ 3.7: Mỗi Web site IIS cĩ thể được cấu hình như là mộ may chu ao chay WSS 42
Hinh vé 3.8: TGp hỢp SỈf€ Ăn kh v.v IỀ cu IỂN CŨ TỐ Và 43 Hình vẽ 3.9: Mẫu trang ccccccccccccc CIỀ, ẨN, Q LẦN cu yu 44 Hình vẽ 3.10: Tổ chức phân quyên với Site và LÌSÍ.«ea cà TỀN “ÂN Sa ST Hs ưu 45 Hình vẽ 3.11: WSS hướng đên tính cộng tác trong khi ÿPS\hưởng đến tính tổng hợp 47
Hình vẽ 3.12: SPS cung cấp Areas và Listing €Jồ việê tổng hợp thơng tin trên mạng 49
Hình vẽ 3.13: Areas dễ dàng định vị và tùm kiếm nội đụng thơng tin - 49 Hình vẽ 3.14: Kiến trúc của một Web Server dy Qbecccccesccccsscscsssscscusescessssusessescaseseasess 50 Hinh vé 3.15: Kién trúc triển khai ShầhePốint PorÌal Server + St set tk, 34
Hình vẽ 3.16: Cách tơ chứèymột;WISS JŸ€b sÌteý ccc Si stisrierreriirrrreree 63
Hình vẽ 3.17: Khung nhshared View và Personal ŸieW -c<c cc + +sss sex s3 65 Hình vẽ 3.I8: Xây dựng một›Web Patt PAB6 0 SE SE 1.1 1 kg 1 vn 25 xà 66 Hình vẽ 3.19: Một Web Part cũng là một đối tượng ASP.NHT che vào 67 Hình vẽ 3.20: Khung nhìn mức cđồ vê mơ hình kết nối các ket srerrerred 70 Hình vẽ 3.21: Chọn Provider Web Pqrf - -c sgk sa 73 Hình vẽ 3.22: Thầy đồi thuộc tính Employee ID ác kết reserved 74 Hình vẽ8.23: ` Hai Web Part đang kết nỗi với nhaM St tt TT ch tr, 78 HìnlÊ9ẽ 4.25cáäc Ủ-base tìm kiỄm - 5S T< ST TH HE 1111211221121 111gr cu 87 Hinh vé 4:30,Cae U-case trong xtt lp cOng Van AEN o.seeccececccccsesesestssstsstessessetsseteecsesesesen 88 Hình vẽ 4.4" Các U-case trong xử lý cơng VĂN ổi cv kisrssrrsseeks 90 Hình vẽ 4:5: Các U-case trong bình ChỌH ẢHÌ à St TH ng xa 91 Hình Vẽ 4.6: Cac U-case chúc mừng sinh HhẬÍ chen xa 91
Trang 9Danh mục các từ việt tat
1 WSS Windows SharePoint Services
2 SPS SharePoint Portal Server
3 STS SharePoint Team Services
5 WMSDE Microsoft SQL Server 2000 Desktop Engine
6 CSDL Cơ sở đữ liệu
7 JSR 168 Java Specification Request 168
8 WSRP Web Servicers for Remote Porlets
9 LAN Mạng nội bộ
10 |WAN Mạng diện rộng
II | CGI Common Gateway Interface
12 | IS Internet Information Services
I3 | ISAPI Internet Server Application Programming Interface
14_ | SSL Secure Sockets Layer
1S | CAML Collaborative Application Markup Language
l6 | 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
Trang 10
Danh mục các thuật ngữ
1 Area Nơi lưu trữ nội đung được tô chức bởi người đù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 La thư mục lưu trữ các file, mỗi file trong thư viện này
Library liên kết với một thông tin người ding định nghĩa
4 Document Là một Web site dựa trên mẫu Document Workspace, ở
Workspace site đâ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ó Íữuìtrữ và hiển
thị các thông tin mà người dùng có thể đưa %à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
§ Personal View Khung nhìn cá nhân (ứng với mỗi ngừời đùng
SharePoint)
9 Server farm Cum may cht
10 Shared view Khung nhin chia'sé, néusthay d6i cach hién thi trong
khung nhìn nây hó sẽ ánh hướng đến tất cả người dùng Portal
11 Site collection Là một tập.éáẻ Web site trên mỗi máy chủ ảo thuộc về
một chủ sở:hữu, nó bao gồm một top-level site và các
sitecon
12 Site group bà một nñóm tùy biên bảo mật ứng với một trang nào
do
13 Tool panel Lam6t thanh céng cu trén mỗi Web Part Page ding dé
Biến thị, tìm kiếm, hoặc import cac Web Part tir các thư
vién Web part
14 Tooh part Là một diéu khién trong tool panel cho phép ngudi
dùng thiết lập thuộc tính, thực thi các câu lệnh cũng
như điều khiển các Web Parts trên một Web Part Page
15 Web Part Là một đơn vị lưu trữ thông tin dùng để xây dựng nên
một trang Web Part Page, nó là các thành phần dựa trên Web Custom Controls kiéu “plug and play”
16 Web Part Page Một trang chứa các Web part
17 Web Part Zone Là một thùng chứa các Web part, một Web Part Zone
trong một Web Part Page sẽ có một ZoneID tương ứng
18 Custom1zation Kha năng tùy biên, nó thuộc quyên của người sử dụng
19 Personlization Khả năng cá nhân hóa, thường phụ thuộc vào các chức năng của hệ thông
Trang 11Lời cảm ơn
Trước hết, em xin được chân thành gửi lời cảm ơn sâu sắc tới các thầy
cô trong trường Đại học Bách Khoa Hà Nội nói chung và các thầy cô trong khoa Công nghệ Thông tin, bộ môn Công nghệ Phần mềm nói riêng
đã tận tình giảng dạy, truyền đạt cho em những kiến thức, những kinh nghiệm
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 thang 05 nam 2008
Pham Thanh 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
Trang 12
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:
se _ Quá tải thông tin, người dùng phải duyệt qua một lượng thông tin khong 16 mới tìm thấy những thông tin mà họ cân
e Khó trong phát triển kế thừa và khả năng ghép nối đểmmở 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
Đăng tải nội dung
Quản trị nội dung
Công nghệ Web PoriàI ra đời đã giảï\qúyết rất tốt các hạn chế mà công nghệ cũ
để lại, nó đã thu hút đừợc nhiều sự quan tâm của giới chuyên môn cũng như các doanh nghiép Web Portah laumétuing dung Web-Based duoc xây dựng theo kiến trúc Portal, cung cấp một điềm truy cập đơn nhất tới các tài nguyên khác nhau trên
mạng Internet hôặc Intfanet›nó là điểm đích qui tu hầu hết các thông tin và dịch vụ cho người sử đụn8 cần, thông tin và dịch vụ được phân loại nhằm thuận tiện cho tìm
kiém va han®ché Vùi lấp các thông tin; đồng thời nó được xây dựng trên một nền tảng cônð›nghệ vững chắc và cung cấp môi trường thuận lợi cho việc tích hợp các ứng dụng Web Portal đang là giải pháp hữu hiệu cho những bài toán lớn trong nhiều lĩnh tực quan trọng: xây dựng chính phủ điện tử, công thông tin đành cho
doanh nghiệp, các tỉnh thành, trường học, bệnh viện, nhằm hướng tới một xã hội
điện tử, đơn giản hóa mọi thủ tục có thể Nhận thấy khả năng ứng dụng to lớn mà công nghệ Portal đem lại, em đã chọn đề tài “Công thông tin quản lý nội bộ doanh nghiệp với công nghệ SharePoint” dé lam đồ án tốt nghiệp của mình
Trang 13Chương 1 Tổng quan về Portal
Nội dung chính sẽ trình bày:
> Khái niệm Portal
> Phân loại Portal
> Cac dich vu cua Portal
> Một số cơng nghệ xây dựng Portal hiện nay
1.1 Khái niệm Portal
Cổng thơng tin điện tử - porral là một khái niệm thường được@nhắ©;đến nhiều trong những năm gân đây của thị trường tin học Bởi vì phạm vi ấp dụng của portal
là rất rộng lớn do vậy khĩ cĩ thể cĩ được một định nghĩa hồn chỉnh và chính xác
về nĩ Trong tiếng Việt, khái niệm Portal cĩ thể hiểu là: “Cổng thơng tin điện tử”,
“Cơng giao tiếp điện tử” hoặc “Cổng giao dịch điện tử”; tùy theðđnơi trường ứng dụng và kế hoạch triển khai mà cĩ thể quyết định PơrtàI hiểu theo nghĩa nào:
Cơng thơng tin điện tử: Là một dạng Web $ite dùng kiến trúc Portal để cung câp thơng tin Đây là bước phát triên đâư tiên của quá›trình xây dựng cơng giao tiép điện tử sau này
Cơng giao tiếp điện tử: Là bước kế thừa của cơng thơng tin điện tử, nhưng cĩ nhiều dich vu hơn Diém Kháê›biệt lắ ở chỗ cơng giao tiếp điện tử cung cấp khả năng tương tác 2 chiều øiữa đgườicufg cấp và người sử dụng
Cơng giao dịch điện›tử:4Là bước kế thừa của cổng giao tiếp điện tử nhưng cĩ
thêm các giaØ tiếp về thương mại, các dịch vụ trực tuyén, dé hướng tới một “xã hội điện tử”: Cơng gia6.dịch điện tử cịn thực hiện các chức năng giao dịch với các nha cung cấp đị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ịclí vụ cơng nghệ bên dưới hồn tồn trong suốt với người dùng
Sau day ta sẽ liệt kê một số định nghĩa về Portal do cac tac gia khac nhau, cac
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 mình cĩ thể cung cấp các tai 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 nhaw`
“Đối với một số người, các Porial thể hiện các cong dong; đố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ừ khia cạnh cơng nghệ hợp nhất, một Portal là một điểm truy cập tích hợp duy nhất, tồ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”
Trang 14“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 lời nguyên phân tản trên mạng Ngoài ra Portal con 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 phan 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
khác
“Đứng trên khía cạnh công nghệ, Portal ngày nay được coi như là một giải pháp ƒrame work) mà thông qua do chúng ta co thể qui tụ nhiễu nguồn thông tin (thông tin hoặc ứng dụng phân mém) khác nhau vào trong một thực thể phân mêm khung (tame work) duy nhất - phan mém Portal”
Như vậy có thê thấy rằng Web Portal là một Ầpg dụngàdựa trên Web tích hợp chặt chẽ nội dung dịch vụ, cho phép truy cập hiệu quả ầuaamột điểm tập trung duy nhất vào tất cả các ứng dụng, thông tin, dữ liệuvới khả năng tùy biến cá nhân hóa cao và được xây dựng trên một nên tảng công nghệ vững chắc Chính nhờ các đặc điểm này mà Web Portal được ứng dự8g.rất nhiều Vào lĩnh các lĩnh vực như thương
mại điện tử, chính phủ điện tử, công thông tin nội bộ trong các doanh nghiệp, cơ
quan nhằm trao đổi, tìm kiếm và chi3›sẻthông tin
1.2 Phân loại Portal
Như đã đề cập ở trên, khó có được một định nghĩa chính xắc về Portal, đo vậy để có được Sự phân.loại chính xác về nó lại càng khó khăn hơn Tuy nhiên, đề hiểu rõ hơf#vê kiến trúe của Portal thì ta nên phân nó thành một số loại như sau theo
các góc độ khác nhau
1:2.1\Phan loai theo kiến trúc
Nhìn theo khía cạnh kiến trúc thì có 2 loại Portal: Horizontal và Vertical Portal
Horizontal Portal: Còn được gọi là “Mega Portal”, loại Portal được sử
dụng để chỉ những portal mà nội dung thông tin cũng như các dịch vụ của nó bao trùm nhiều chủ đề, nhiều lĩnh vực, do vậy nó mang tính điện rộng, phục vụ cho nhiều loại khách hàng khác nhau Loại Portal này ảnh hưởng đến toàn bộ cộng đồng Internet, chúng thường chứa một máy tìm kiếm (Search Engine) và cung cấp khả năng cá nhân hóa cho người dùng bằng cách đưa ra nhiều kênh khác nhau ( ví dụ truy cập tới các thông tin khác như là thời tiết trong 1 vùng, thị trường chứng khoán, ) Yahoo!, MSN, AOL là các loại này Chúng là các cổng để đưa ta tới nội dung,
dịch vụ của các website khác
Trang 15Vertical Portal: khác với Horizontal, các Vertical Portal tập trung vào một 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 đị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 luc ERPs (Enterprise Resourrce Planning)
Commerce Portal: Hé tro thong mai dién ti thede2 m6 hinh B2B va
B2C
Pervasive Portal: Hỗ trợ truy cập thông qua các thiết bị di động (PDA, smart phone, ) Kiéu nay sẽ rất pRátffiên troìg tương lai cùng với sự phát triển nhảy vọt của công nghệ không đậy
1.2.2 Phân loại theo chức năng
Portal được phân ra thành.4 loại khရnhãu theo mục đích sử dụng và theo
chức năng
+,
“~~ Coporate Portal: Contdugc goi la B2E portal hay Intranet Portal Các PơftaÌloậi nầy được thiết kế cho quá trình xử ly B2E (Business to Employee), ác fòạt động để phát triển quá trình truy cập, xử ly, chia
Public Portal: Hay còn gọi là Internet Portal, ví dụ như AOL,
MSN
1.3 Các dịch vụ của Portal
Một Web Portal thông thường cung cấp các dịch vụ sau và chính điều này tạo nên sự khác biệt giữa một Web Portal và một Web site truyên thông:
Trang 16Quan tri noi dung (Content Management): Portal chtra cac thong tin
từ các nguồn khác nhau và các nguôn này cần được cập nhật thường xuyên, vì vậy Portal cẦn có một phương pháp đơn giản để thay đổi nội dung cho phù hợp
Tùy biến cá nhân hóa (Personalization): nhận ra những người dùng khác nhau và cung cấp cho người đùng nội dung xác định được cấu
hình theo nhu cầu của họ Đây là một dịch vụ quan trọng của Portal,
nó dựa trên việc thu thập các thông tin về người ding và các cộng đồng người dùng để rồi đưa ra nội dung phù hợp tại những thời điểm thích hợp
Dịch vụ đăng nhập một lần (Single Sign-On): cho phép người đùng
chỉ thực hiện đăng nhập hệ thống một lần duy nhất trước khi sử dụng
tất cả các tài nguyên (thông tin, địch vụ, phần mềm áp dụng, ) được cung cấp hoặc được tích hợp trên portal
Hợp tác (Collaboration): cung câp một tập hợp các chức năng dé phan cấp giao tiếp giữa người dùng Portal phải baöàgồm cặc cộng cụ (tools) dé tang cường khá năng liên lạc, trấo đổi thông in, và năng
suất xử lý công việc của các nhóm làm việc hoặc;củamột cộng đồng
Thư điện tử (email), diễn đàn thảo lận (fO0*um), hỏi đáp (Q&A), v.v là những công cụ tiêu biêusđề hỗ trợ›cáé›nhóm làm việc
Tìm kiếm thông tin (Search): nhằm giảm thiêu tinh trang qua tai thông tin Dịch vụ này thực hiện tìm kiêm thông tin theo yêu câu của người sử dụng, thông đuà;mô tả thông tin cân tìm dưới dạng các từ khoá hoặc tô hợp các từ kHöä
Bao mat (Security): đây›là vấn đề sống còn cho một web portal Portal phai cung sậ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 tn 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 ñgôh:ngữ/công nghệ khác nhau Tuy nhiên các giải pháp xây dựng portal
hang đầu hiện này hoặc dựa trên tiêu chuẩn J2EE chạy trên máy chủ như 'WebSbphere của IBM, hoặc theo mô hình của WebLogic của BEA, hoặc là chuẩn
Net đủà 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ưne 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 dung, tt chuyén m6n goi la 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 đo 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ở đữ liệu sẵn có nhưng điều
Trang 17nà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ê
e Hình thức tiếp theo là định hướng lại đò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 dang 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
e Hình thức cuỗi cùng là triển khai Portal theo hướng sử dụng hệ thống phan mềm hoạch định nguồn lực doanh nghiệp (ERP-Enterprise Resource Planning) có chức năng Portal của các công ty như SAP cung cấp
MICROSOFT SHAREPOINT PORTAL SERVER
Là một phần mềm được thừa hưởng tất cả các công nếhệ èủâ:Mièrosoft nên SharePoint Portal Server (SPS) là một sản phẩm thu hút đứợè sự chứ ý tủa rất nhiều người Ngay sau khi cài đặt, hệ thống portal đã có các chức nặng co ban nhu: tim kiém, cung cap thông tin theo chủ đề hay điểm'tif theo thời gian Hệ thống cũng được cung câp sẵn các ứng dụng hệ thống để người dùn8›cuối tích hợp dữ liệu trong
bộ Outlook Office của mình lên hệ thống Vì chạyètrog môi trường có Active Directory nên việc gán quyền hạn cho người sử dụng không mây khó khăn Hệ thống cũng có thể tái sử đụng các thôñg.tỉh về ngừối sử dụng đang có sẵn trong hệ thống Microsoft Exchange Thu tuc taocac trang web dinh dạng mặc định (default) kha don gian
Có rất nhiều cách khác nhau để xây dựng cấu trúc một hệ thống portal: xây dựng theo chủ đề, xấy dựng hệ thống thiên về khả năng tìm kiếm, xây dựng bang cách sử dụng nội dung da đượ@xầy dựng từ trước Tương tự như các sản phẩm khác
của Microsofi giao diện củầ sản phẩm rất thân thiện và dễ hiểu Mỗi người phát
triển hệ thống cö›riêng›một vùng làm việc gọi là MySites Đến khi công việc hoàn
thiện, lộ: có: thể thực hiện thủ tục chuyên giao két quả công việc lên hệ thống bằng thủ tục kẽo›thả Theo mặc định thì vùng làm việc MySite là dành riêng cho từng
ngừời) nhưng néu muốn cũng có thể chia sẻ kết quả công việc cho mọi người Chức năng tìm kiếm trong sản phẩm hoạt động rất tốt và khá chính xác, có
khả nắng thực hiện tìm kiếm trên các hệ thống khác nhau như SharePoint Portal,
Lotus Notes, Exchange và các thư mục dùng chung tập tin Cũng do tích hợp tốt với
MS Office 2003 nên người sử đụng có thể tạo và soạn thảo Word ngay trong portal rồi ghi lên vùng Document Workspace Nhờ tính năng này nên hệ thống portal có đầy đủ các chức năng quản trị nội dung như quản trị, thâm định phiên bản phát hành
của tài liệu
Cũng chính do tích hợp véi Office 2003 nén web site trong portal có cấu trúc, nội dung tương tự như web site của phần mém FrontPage 2003 Nguoi phat 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 đữ 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 đựng hệ thống và các chương trình chức năng chạy trên
Trang 18server 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 va co sé ha tang cua Microsoft
BEA WEBLOGIC PLATFORM 8.0
Bộ phần mém gdm 3 sadn pham: WebLogic Portal, WebLogic Server, WebLogic Workshop va san phẩm tuy chon WebLogic Integration WebLogic Platform (WP) làm thành một môi trường hoàn hảo để xây đự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 cfing cé thé siz dụng các công cụ lập trình quen thuộc để xây dựng chương trình ið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 WBế Cồn8›cụ quản trị hệ thống dùng giao điện web nên bất cứ ai cũng có thể sử dự8g đề câu hình portal chi cung cấp những thông tin cân khai thác, loại bỏ (che đi) các điông tin không cần thiệt
Bộ phần mềm này cung cấp day đủ các chức năng cần thiết để xây dựng portal như tổng hợp thông tin, tim kiém théng tin theo yéu cau va mét s6 chic nang phục vụ thương mại điện tử Chức năng:WebL0gi©:lntegration Server của BEA giao tiếp rất tốt với nhiều phần mềm chức năn8›đỏ›các tô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ểể ứng đụnồ:của WP là phần mềm có tên WebLogic IDE, phần mềm này có kháhănè 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ử đụng nên mỗi người chỉ cần thực hiện đăng nhap 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 ‘thong tin can thiét khi co yéu caty nhatila khi truy cập vào các hệ cơ sở dữ liệu Phan mém WebLogic WorÊShop›là công cụ để thiết kế trang thông tin, sử đụng XML để quản lý định
dang, nén,.co thé thay đổi linh hoạt hình thức thể hiện thông tin trên các trang web
Webbogic WorkShop cũng có thể tự động sinh mã ứng dung theo ngôn ngữ JSP dựầ trên các thông tin mà người xây dựng hệ thống khai báo Ngoài ra còn có công
cu Portal Resource Designer để thiết kế thuộc tính, luật sinh, định dạng thông tin
theo thói quen của người sử dụng hay các phiên bản quảng cáo phục vụ các chiến dịch quảng cáo
Công việc quản trị hệ thống được phân chia tách bạch theo chức năng cung cap hay quản trị thông tin Nhờ đó có thể phân công, phân cấp và giao quyền để nhiều người cùng tham gia công việc khác nhau Ví đụ như trong khi người phát triển hệ thống đang dùng WebLogic Workshop để thiết kế trang web thì nhà kinh doanh vẫn có thê câu hình và quy định portal chạy theo yêu cầu nghiệp vụ của mình
Chức năng quản lý nội dung (content management) cla WebLogic Portal cũng khá đây đủ Người sử dụng có thê tìm và duyệt thông tin theo câu trúc cây thư
Trang 19mục, cập nhật các loại tập tin nếu cần Tuy nhiên, chức năng tìm kiếm của WebLogtc lại bị bó gọn trong nội bộ kho dữ liệu của nó, không có khả năng mở
rộng tìm kiếm sang các portal được xây dựng bằng các công cụ khác, ví dụ như Microsoft SharePoint Portal Cơ chế quản trị nội dung cũng không chỉ dành riêng chỉ cho những người quản trị hệ thống, nếu thấy cân thiết thì các thành viên trong nhóm phát triển hệ thống cũng có thê chỉnh sửa nguồn thông tin hay hình thức thể hiện thông tin của trang web bằng công cụ Content Selector Editor Người sử dụng thông thường cũng có thể thay đổi trang web dành riêng cho họ có tên là My Pages Sản phẩm WebLogic Portal 8.1 phu hop với yêu cầu xây dựng những portal được tích hợp từ những hệ thống thương mại điện tử sẵn có và ứng dụng phức tạp ORACLEAS PORTAL 10G
Oracle Application Server 10g gồm OracleAS Portal cing với:một.loạt các công cụ phát triển, tiện ích đi kèm nhu OralceAS Reports, Oracle Single Sign-On, Oracle Ultra Search, Oracle Internet Directory (OID) vàOracleAŠS Integration Hé thống phức tạp nhưng công việc quản trị hệ thống rất đơn giản đồ›sự phôi hợp và lệ
thuộc lẫn nhau giữa các công cụ rất chặt chẽ Và€ũ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 dé mở rộng chức năng sẽ rất khó khăn và phức tạp ì
Cac portlet cé sin trong OracleAS Portal cho phép sap xép va phan cơ chế
bao mat 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ị Đơ Bộ pHận Application Server có quá nhiều thành phan chức năng nên chính bả thân phần mềm phải tự đảm nhận các chức năng thiết yếu
dé dam bao hệ thốnế 6ó cấu túc đây thư mục và yêu cầu quản lý như Oracle quy định Nếu muốn sử dụag)cáè⁄phần mềm bảo mật khác thì người quản trị phải tự minh quan ly.s6 ID cho ca¢ san phẩm không phải do Oracle sản xuất
Thu tuekhoi tao mot portal trong Oracle rat nhe nhang, khong 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ị đi độ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 đung 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 đạng đồ thị thay
cho dang văn bản mà WebClipping vừa cung cấp Việc xây dựng và chuyển giao đữ liệu giữa các portlet cũng rất đễ 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
Trang 20Về 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 ding để xây dựng các portlet giao tiếp với SAP, PeopleSoft, Siebel và một số cơ sở đữ liệu cao cấp khác; Oracle JDeveloper 10g để xây đự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 portlet khác nhau để sử dụng trong hệ thống Việc quản trị nội dung portal cũng rất
an tượng, cơ chế hoạt động không đơn thuần chỉ là kiểm soát việc bố sung hay loại
bỏ tài liệu, gán quyền truy xuất và tự động loại bỏ thông tin cũ, mà chức năng này còn được đùng cho người phát triển để xây đựng, bảo trì hệ thống: nhân viên trong doanh nghiệp cũng có thể khai thác chức năng này để thực hiện nghiệp vụ kinh doanh
Công cụ Oracle Ultra Search của phần mềm có khả năng lập chỉ mục tất cả
các loại thông tin, trong cơ sở dữ liệu, các tập tin lưu trên 6 dia, trong hé théng thu
tín điện tử hay web site Khác với các chương trình tìm kiếm khae, Oracle Ultra Search có thể cung cấp thông tin lấy từ hai hay nhiều kho dữ liệu củà po†tal cùng một lúc, hay có thể tiếp tục thực hiện thủ tục tìm kiếm trong kÑi nềười sử dụng đang xem nội đung mới tìm thấy (chỉ có Plumtree mới có chức ấãhg tươn th)
Hoạt động ngay bên dưới toàn bộ các cơ chế?chức tăng nêu trên là côngcụ Oracle Application Server Công cụ này thực hiện chức năng thu thập thông tin do các portlet cung cầp, quản trị bộ nhớ đệm, tập hợp thông tin thành trang web rồi cung câp cho người sử dụng trong thời giãn ngăn nhất Ñhìn chung đây là sán phẩm
có đầy đủ các tinh ning chuyén cho m6tportal quyamé cong nghiệp
SUN JAVA SYSTEM PORTAL SERVER 6.2 (JSPS 6.2)
Là san pham cia mé6t hang phan mém dan dau vé công nghệ Java và sản xuất máy chủ nên san phaf*portal JSPS%6.2 cua Sun ciing thira hudng được tất cả những
ưu điểm để trở thành một giảiphắp portal an toàn, ôn định và có khả năng mở rộng
Có thê cài đặt JSPS 6.2 trên*nhiều cấu hình phần cứng và hệ điều hành khác nhau
Nếu muốn“người ta cũng có thê sử dụng các phần mềm do công ty khác sản xuất để
thay thếmột Vài chức năng có sẵn trong JSPS 6.2
Bộ công cụ quản trị hệ thong được Sun nghiên cứu, thiết kế kỹ lưỡng và chi tiết nền chạy rất ôn định Chỉ cần cài đặt tại một máy chủ nào đó trong hệ thống là
người quản trị đã có thể bao quát được toàn bộ hệ thống portal cùng số lượng máy chủ trong hệ thống Ngoài ra nó còn cung cấp một loạt các lệnh thực thi từ dòng
lệnh để xác định tên và chức năng của các ứng dụng portal chạy ở chế độ dịch vụ hệ
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 đự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
Trang 21Khụ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 thong 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ữơfbg 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 đú trờn thị trường như Lotus Notes/Domino hay Microsoft mail và cỏc chức năủg làm việc nhốm như thảo luận nhúm (forum), tỡm kiếm thụng tin hay phỏt sinffbản.tin điện tử theo yờu cầu Nội dung thụng tin cung cấp được trỡnh bày đưới nhiều địh-dạng phong phỳ nhờ tuõn thủ cỏc tiờu chuẩn xõy dựng nội dung đền J2EB›nhừ FatWire Content Server, Intergrated Search
Việc giao tiộp gitta phan mộm portal voi hộ thong co sộ ha tang nhu hộ quan
trị cơ sở đữ liệu, thư tớn điện tử do phõn tmờ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ễ
dàng nếu như người ấ8y dừng đó cú kiến thức về Java Nếu trang bị thờm sản phẩm Sun Java Studio Creator thỡ ngõy cả người ớt kinh nghiệm cũng cú thể xõy dựng được cỏc ứng,dụng đơn giản chạy trờn portal
Đõy là một trong những sản phẩm sử dụng cụng nghệ nhất quỏn nhất trong cỏc đản phẩm đề cập trong bài viết này và là sản phẩm duy nhất hỗ trợ chuẩn Liberty Phase 2
VIGNETTE APLICATION PORTAL 7.0 (VAP 7.0)
Là một sản phẩm dựa trờn một loạt cỏc tiờu chuẩn mở nờn sản phẩm cú thể
dựng để xõy dựng cỏc ứng dụng chuyờn dựng chạy trờn portal hoặc cú thờ chạy trờn
hệ thống sử dụng nhiều hệ điều hành hay kiến trỳc cụng nghệ khỏc nhau Thao tỏc quản trị hệ thống đơn giản và hiệu quả, khụng cần người quản trị cú kiến thức về mỏy tớnh nhiều lắm Mọi thao tỏc quản trị hệ thống như bổ sung chức năng, gan quyền quản trị hệ thống để lập đề ỏn xõy dựng cỏc portlet mới đều thực hiện trờn một giao diện nhất quỏn và cú kịch bản (wizard) hướng dẫn thao tỏc theo từng bước
một
Bộ phỏt triển ứng dụng Vignette Aplication Builder (VAB), một thành phần của bộ cài đặt cung cập mụi trường phỏt triển hệ thống Vignette Aplication Builder cũng được tớch hợp săn hơn 100 chương trỡnh chức năng, nờu muụn người sử dụng
Trang 22có thể xây dựng được ngay một hệ thống portal nội bộ có các chức năng cơ bản
như: Thảo luận nhóm, tìm kiêm, thư điện tử
Vignette Aplication Portal nổi trội nhất ở chức năng quán trị hệ thống và hỗ trợ đa ngôn ngữ Chỉ cân ngồi tại một vị trí, dùng chung một giao diện quản trị hệ thống thống nhất, người chủ trì hệ thống có thể phân loại và tiến hành cấp quyền hạn quản lý cho nhiều người khác nhau cùng tham gia quản trị hệ thống Giao điện của màn hình quản trị hệ thống nhất quán và có thê chuyển đổi sang 144 ngôn ngữ khác nhau trên thế giới
Một điểm nỗi trội khác đó là kiến trúc 'multitenancy', kiến trúc này cho phép triển khai nhiều portal khác nhau trên một máy chủ thay vì trải rộng hệ thống của mình lên nhiều server khác nhau Ưu điểm này cũng khắng định năng lực của sản phẩm đối với các portal quy mô lớn và phức tạp
Nhung Vignette Application Portal hoi kém cỏi hơn á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/6ữ›đụ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 Ghơ từng người sử dụng Còn nhìn chung các portlet hiện điệ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ỗstrợ một loạt:éác ứng dụng hệ thống, hệ quan
trị cơ sở đữ liệu, hệ điêu hành khác nhau: Và Gả 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ựâ trên nềnìàmã nguồn mở
Không phải mọi,Ðòrtäl.nầo cũng đều phải xây dựng từ những bộ phần mềm thương mại, mặe dầu khi clọn sử dụng các bộ phần mềm thương mại thì người sử dụng có đủcm@†công cụ Và chức nang cần thiết, nhận được sự hỗ trợ đầy đủ nhất từ phía công ty ầảh Xuất phần mềm Chúng ta hoàn toàn có thể xây dựng được các portál›dựa trên 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êầ khuẩ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, thanh phan 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ể đù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ử đụ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ử đụ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ế bao mat LDAP
để quản trị người sử dụng: Xuất nhập đữ liệu bằng công nghệ XML Phiên bản này cũng cung cấp các API để xây đựng các chức năng mới cho portal khi cần thiết
Trang 23Nhược điểm của Metadot là chưa cĩ cơng cụ thiết kế mạnh tích hợp trong sản phẩm, chưa hỗ trợ đây đủ để portal cĩ thể đưa ra được các trang màn hình cĩ trộn lẫn hình ảnh, bảng biểu và đồ thị vào trong văn bản Metadot cũng chưa tương thích với các tiêu chuẩn mới về xây dựng ứng dụng trên portal như JSR168 hay WSRP Vì vậy sản phẩm này thích hợp cho portal của các tổ chức nhỏ
Gluecode Advanced Server ciing là phần mềm portal mã nguồn mở viết bằng Java và sử dụng cơng nghệ Jetspeed, cơng nghệ Java/XML nằm trong dự án Jakarta của Apache Software Foundation Phần mềm này được tích hợp nhiều cơng
nghệ hiện đại như các sản phẩm portal thương mại khác như: Cơng nghệ XML, nội dung được quản tri và dịch vụ web, tương thích tiêu chuẩn WSRP
Gluecode Advanced Server chạy trên cả hai mơi trường hệ điều hành Red Hat Linux và Windows, tích hợp với web server Apache 1.3 Nếu.muốh, người sử dụng cĩ thể cấu hình phần mềm này để các ứng dụng xây dựnề theị mồi trường
Java J2EE 1.4 và JDBC hoạt động Các tính năng nỗi trội của Glueèode)Advanced Server bao gồm: Chức năng tạo chỉ mục, cá loại văn bản đàng PDBE lẫn Office; Cĩ
hỗ trợ chế độ bảo mật theo cơ chế ACL hay LDAP; Ngồi ra cũnồ›cĩ cơ chế để giao tiép voi tng dung Microsoft Exchange Server
Mặc dâu cả hai sản phâm mã nguơn mở đêu trên chưa được sự châp nhận
rộng rãi và cĩ hơ trợ của các cơng ty phát triện phân mềm, nhưng hai sản phâm này đáng được chú ý nêu như bạn muơn phát triên portal theo mơ hình mã nguơn mở uPortal : giải pháp uPortal được tơ chức JA-SIG phát triển trên nền cơng nghệ Java Đây là portal thonstdung nhat (noi tiếng nhất) trong các portal mã nguồn
mở viết trên Java Tuy vậỳ, các mođulê nghiệp vụ khơng được JA-SIG phát triển do
do cdc hang str dung@iai phap uPortal phai tự phát triển module nghiệp vụ hoặc tích hợp các module nghiệp/vụ của:hăng thứ 3 Hiện tại, uPortal chỉ áp dụng tiêu chuẩn Portlet API (JSRA168) ho phiên bản 3.0, điều đĩ cĩ nghĩa là các ứng dụng đã viết cho uPortal›hộè.đã tích hợp với uPortal sẽ phải xây đựng lại từ đầu khi nâng cấp lên phiên bản 3:0
Két hương: chương này đã trình bày những khái niệm, những đặc trưng cơ
bản của một Web Portal, giúp phân biệt nĩ với một Web site truyền thong Chuong
nàY`€ũng giới thiệu một số cơng nghệ hiện nay để xây dựng Portal để thấy được sự 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
Trang 24Chuong2 Cac chuan xay dung Portal
Trong phần này ta sẽ đi tìm hiểu khá ki chuan JSR 68 dé sau d6 khi tim
hiểu về chuẩn NET ta sẽ thấy rằng: tuy các chuân.với cácttên gọi khác nhau, các thành phần mà chúng đặt ra trong đó với tên gọi Rháè nhầu nhưng giữa chúng vẫn
có một sự “ánh xạ ngầm” về tính tương đồng biữ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, goi la portlet Sy da dạng các giao diện khong tuong thich nhawlam nay sinh vấn đề cho các nhà cung cap ung dung, khach hang portal, cac,hang portal sérver Dé vuot qua những vấn đề này, JSR 168 (Java SpecificationRequest 168), dic ta portal budc đầu cung cấp sự liên hoạt động giữa các porletà.portal
JSRE 16S đmh nghĩa portlet như các thành phần web dựa trên Java, được quản
lý bởi.một porftlet container, container xử lý yêu cầu và sinh nội dung động Portal
Sử dụng các portlet nhu thanh phan giao diện người dùng có thể tích hợp được, nó cung sập một tầng trình diễn cho hệ thống thông tin
Mục đích của JSR 168 là:
e Định nghĩa môi trường thực thi, hay chính là Portlet container, cho
cac Portlet
e Dinh nghia API giita cac Portlet container va cac Portlet
e 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 cac Portlet
e Cung cap kỹ thuật cho phép các portlet chứa các servlet và JSP
Định nghĩa một gói các portlet cho phép triển khai đễ dàng
Cho phép portlet di chuyển giữa các portal JSR 168
Trang 25e Chạy các portlet JSR 168 như các portlet từ xa sử dụng giao thức dịch
vụ web cho các portlet từ xa (WSRP)
JSR 168 đã được chấp nhận rộng rãi trong công nghiệp tin học Hầu hết các công ty lớn về portal đều là một phần của nhóm chuyên về JSR 168 : Apache, ATG,
BEA, Boeing, Borland, Broadvision, Citrix, EDS, Fujitsu, Hitachi, IBM, Novell, Oracle, SAP, SAS Institute, Sun Microsystem, Sybase, TIBCO, va Vignette Danh sách chính thức thậm chí còn dài hơn
2.1.2 Các khái niệm
2.1.2.1.Portal
Một Portal theo định nghĩa của JSR 168 là một ứng dụng dựa trên web cung cấp khả năng cá nhân hóa, đăng nhập một lần, va tap hop (aggregati
nhiều nguồn khác nhau và làm chủ tầng trình điễn của các hệ th
hợp là xử lý việc tích hợp nội dung từ các nguồn khác nha
web Một portal có thê có đặc tính cá nhân hóa tinh tế i dung than thiện với người đùng Các trang portal có thể có tập hợp các khác nhau để tạo nội dung cho các người dùng khác nhau
dung Web portal xử ly
ời dùng hiện tại, và sau đó
orflet container cung cấp môi
ortlet API Portlet container được
iner truy xuất thông tin về portal bằng ice Provider Interface)
Hinh sau miéu ta kién truc co ban cu
các yêu cầu của client, truy xuất Các po
gọi portlet container để truy xuất n
trường chạy cho các portlet và gọi
gọi từ portal qua Portlet.Invok
Trang 262.1.2.2 Trang (Page)
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
a] IEm TT Ti P1icFosgÏq Ti Peed 5
| Ble Edt Mew Favorites Too Help - :
| #tauk + = QE] a Speech 3iPmeRn QấHde+ | 3ì sŸ SỈ <2
eee eee | = - hace
ESSENTIAL EA Ea 8 it's more than jList #-leaming mente m
£ Seéreh help page,
18M Trevel The new learning Future
Team Infrastructure: IiM growth seen Hee te Eyrnfitl Gureerts ti”
spars through the paint Teh Globe Serrices sells arama a “i
Translaten: New ads illustrate | beonuse: they save clients be
ø mang tính chất động Các Portlet được thực thi trong l môt
¡ là Portlet Container Các Portlet trình diễn nội dung trong một cửa ang Portal như hình sau
Trang 27
My Front Page tuesday - apr 23
Change Colore | 5588 Combtent | Change Layout | Add/Delate Pager 1 hide buttens |
—%
a
Maria Rose : © Israr! Kills Two Militants, Bettiichem Talks Planned errata my Zip Sods og City al
~ ero hoglesy Rowe from CNET Aor 33 Shee
ReFei 1
: Creœ 4it|f lersor t jy | aearch |
® yHoo 3 162 E porsitii for al fe wcheppineesin tae worlds Take care of your own unerests Grstto balance out pour ;
WebSphere Rotated Links
U§.Miists ngans3ắrđo Đa - / 90 Ptheviee- WPS Teun DE: Doeusnent
Palm Roadiog Dream Aimalvaom, 7002 Forecurts, and tore et Yoho! Aatsaia gy = án
Application Servers
[7 Comics CE) supine como Aua
Portlets
Hinh.vé\2.3: Gac Portlets
Tương tự như một cửa số:trên một may để bàn, cửa số Portlet có một thanh
tiêu đê đê chứa các điêu khiên chò phép người dùng mở rộng hoặc co hẹp các ứng dụng
Các mấy khách tương tác với Portlet thông qua mô hình “yêu cầu/ trả lời” (request/rếsðonsẻ) Với›mỗi một yêu cầu, Portlet sinh ra một nội dung đặc biệt gọi
la phan tanh (fragment) Méi phân mảnh tượng trưng cho một phần nhỏ của ngôn
ngữ đánh dâu (HTML hoặc XHTML), các phân mảnh được hợp lại để tạo thành nội
dung trả lời hoàn chỉnh
Portlet Container cung cấp môi trường thực thi cho các Portlet Chúng có
trách nhiệm khởi tạo, thực hiện và hủy các Portlet mà nó chứa đê đáp ứng các yêu câu từ Portal Server
|
Trang 28
Hinh vé 2.4: Vai tro cua Portlet Container
2.1.2.4.Portal Server
Portal Server là một máy chủ Ứng dụng đặc biệt, nó cung cấp các xử lý logic cho các ứng dụng portal Portal cung cấp cơ sở hạ tang thòi gian thực cho portal No thường liên kết với một web server để xử lý các yêu câu từ máy khách
Hình vẽ 2.5: Hoạt động của Portal Server
fragments
l=] 6
Trang 29
Các cơng việc trên được thực hiện khi người dùng yêu cầu trang portal từ một thiết
bị máy khách:
1 Thiết bị máy khách (trình duyệt hoặc PDA) tạo ra yêu cầu dưới dạng HTTP
và gửi về cho máy chủ web
2 Máy chủ web nhận yêu cầu và chuyển yêu cầu cho máy chủ portal
3 Máy chủ Portal xác định portlet mà yêu cầu chỉ ra và yêu cầu Portlet Container thực hiện khởi động portlet để xử lý yêu cầu
4 Máy chủ Portal yêu cầu portlet container thực hiện khởi động các portlet liên quan đến trang portal
Thực hiện tạo ra các phân mảnh
6 Các phân mảnh được trả về cho Portal Server, nơi chúng được hợp lại để tạo
nên trang Portal
7 Trang Portal được trả về máy khách để hiển thị
2.1.2.5.Phiên (Session)
Khải niệm phiên của JSR 168 dựa trên HttpSession định nehiâ cho ứng dụng Web Bởi vì các ứng dụng portlet là ứng dụng wel, chúng Sử dụng cùng một phiên
nhu servlet Dé cho phép các portlet luu tri diteliéu.tam,thoi, pham vi session mac
định là phạm vi portlet Trong phạm vi này, portlet›cơìthê lưu trữ thơng tin can, thiét qua request người dùng Các thuộc tính được lưu trữ Với phạm vi này là tiền tố trong session đề tránh hai portlets (haØ:hai thực thê€ủa cùng portlet định nghĩa) viết
đè lên nhau
Bồ sung cho phạm vìsếs$ion9ortlet, JSR 168 hỗ trợ phạm vi session ứng dụng web Trong phạm vi này mỗi thànhtghân của ứng dụng web cĩ thể truy cập thơng tin Thơng tin cĩ thế đừợe›sử dụng để chia sẻ giữa các thành phần của cùng ứng dụng web (giữa các porflet, haý›g1ữa một portlet và một servlet)
2.2 Chuẩn WSRP
2.2.1 Tổng quan
WSRP(Wcb Services for Remote Portlets) là một chuẩn do OASIS tao ra,
nhamunuc dich dinh nghĩa một giao diện chung và thống nhất cho các dịch vụ Web
Services C6 hai điều cần lưu ý là: thứ nhất WSRP là 1 chuẩn hướng trình diễn
(presentation-oriented), tức là nĩ cung cấp một giao diện cho phép người dùng
tương tác trực tiếp với dịch vụ; thứ 2 các đặc tả WSRP định nghĩa một giao điện
chung, xác định rõ để chỉ đạo cách mà các Portal giao tiếp với dịch vụ đề đưa lại kết quả cho người dùng Chú ý rằng WSRP được xây dựng trên các chuẩn Web
Services đã cĩ như là SOAP, WSDL, UDDI
Trang 30
Wehrle
Cac dc ta WSRP dinh nghia cdc nhan t6 sau bén trong kién tric WSRP:
<* WSRP Producer: Day la mét Web Service dé “chayc4e Portlet và thi hành
1 tập hợp các giao diện WSRP để cung.cấp các lệnh cho*Khách hàng Phụ thuộc vào sự thực hiện này, nó cung cấp mối trừờng thực thi cho các Portlet Các WSRP Producer đươc mô tả bằnđShgôh ngữ định nghĩa địch vụ web (WSDL)
s%* WSRP Portlet: Là một thành phần giào điện hgười dùng, năm trong WSRP Producer, và được truy cập từ Xa thông đua giao diện mà Producer nay cung cap
¢* WSRP Consumer: la.mét dich vu-web khách để triệu gol WSRP Producer
và cung cấp mộtmôi trường cho người dùng tương tác với các Portlet Vi du
Portal là một WSRP Cònsumef
Trang 31
Markup
fragments aggregated into complete web
Hinh pe rtal déng vai tro la mé6t WSRP Consumer
uy dinh cách thức trao đổi giữa portlet với máy chủ portal là
XML do các ứng dụng web chạy ở mức độ dịch vụ (web gian thực hiện trao đôi Chuân WRSP lam cho một portlet hoàn
đổi thông tin được với một máy chủ portal nào đó xây dựng trên kiến trúc
.NET của Microsoft nhờ vào trung gian là hệ thống ứng dụng web chạy ở mức dịch vụ đã tuân thủ chuân WRSP WRSP cũng tạo thuận lợi để phát triển mở rộng cấu trúc thông tin trao đôi giữa portlet với máy chủ
2.2.2 So sánh JSR - 168 và WSRP
Giữa JSR — 168 và WSRP có một số khái niệm tương đồng, cụ thê như sau:
* Các chế độ portal và cửa số trạng thái được sắp ngang bằng nhau
s* Mã hóa URL và tạo URL
$%* Ca hai chuẩn đều có tương tác người dùng- portlet, với pha hành động và render
Trang 32* Trạng thái cho phép các phân mảnh portlet hiện tại hiển thị chính xác trong chuỗi render được hỗ trợ trong WSRP dưới tên gọi navigationnal state và
trong JSR 168 dưới các tham số render, nó có thể ánh xạ vào trạng thái điều
hướng của WSRP
$* Cá hai chuẩn lưu trữ trạng thái liên tục giữa các request trong một session
WSRP sessionID tham chiếu đến session của JSR 168 khi ánh xạ cuộc gol
WSRP sang portlet JSR 168 va ngugc lai
s* Lưu trữ trạng thái liên tục để cá nhân hóa kết xuất của portlet được thực hiện trong WSRP thông qua các đặc tính của kiểu, mặc đù JSR 168 chỉ hỗ trợ một
kiêu xâu hay mảng xâu Điều này có nghĩa là thủ tục WSRP dựa trên JSR
168 chỉ sử dụng tập con của chức năng WSRP
% Thông tin về portal đang gọi portlet được gọi là RegistrationData trong WSRP và được biểu diễn là đối tượng PortalContext trong JSR 168 Tất cả
dữ liệu biểu diễn thông qua PortalContext đến một portletfSR \168 là sẵn
dùng trong RegistratonData của WSRP, vì vậy cho phép ánh xạ giữa PortalContext va RegistrationData
WRSP được các nhà phát triển dịch vụ đưa vào áp.dụng bằng việc thiết kế những chương trình phần mềm viết một lần và sử›dữñữg đượ©'ở nhiều loại cổng khác nhau (written once-deployed everywhere) Tuy.nhiên, đây mới chỉ là một trong nhiều chuẩn portal cần thiết cho việc hỗ trợ khả nằng hoạÐđộng liên thông giữa các công, nhất là những chức năng như thu thập thông tỉh, Quản lý nội dung và quản lý người sử dụng
Hiển nhiên tất cả các khái niệm ánh xạ được gitta JSR 168 va WSRP Vi vay ta
có thê thực thi bộ chứa pôrfletJSR 16§ được truy cập qua WSRP va coi JSR 168
%% Web Part Page: là một kiểu trang web đặc biệt, chúng hợp nhất đữ liệu
(danh sách, biểu đồ), nội dung (văn bản, ảnh) vào một công thông tin động được xây dựng cho một mục đích nào đây Mỗi Web Part Page chứa một hay
nhiều Web Part Zone, mỗi Web Part Zone lại chứa một hay nhiều Web Part
Web Part là khối xây dựng cơ bản tạo nên Web Part Page Để xây dựng nên Web Part Page, Microsoft tạo ra lớp WebParrtPage (kế thừa từ System.Web.UI.Page)
Web Part: Là một khối thông tin để tạo nên 1 khdéi xây đựng co ban của Web Part Page Các Web Part có thể giống hoặc khác nhau về mặt thê hiện
hoặc cách đối xử, nhưng chúng đều dựa trên tệp Web Part assembly được cài
đặt trên máy chủ Để xây dựng nên một Web Part thì cần phải có các công cụ
Trang 33phat trién nhu 14 Microsoft Visual Studio.NET Lép WebParrt cung cấp các
thuộc tính cơ bản cho các Web Part nhu 1a: Title, Description
Kết chương: trong chương này ta đã đi tìm hiểu các dạng chuẩn để xây dựng Portal, mỗi chuẩn về Portal có một thế mạnh riêng, tủy vào từng bài toán cụ thể mà chọn chuẩn nào cho phù hợp Chương sau ta sẽ tìm hiểu thật chi tiết về chuẩn SharePoint của Microsoft để thấy được những thế mạnh cũng như tính khả thi của việc ứng dụng nó vào bài toán cổng nội bộ quản lý doanh nghiệp
Trang 34Chương 3 Công nghệ SharePoint
Nội dung chính sẽ trình bày:
> Windows SharePoint Services: kiến trúc, các khái niệm, các thành phần,
mô hình đối tượng với WSS
> SharePoint Portal Server: kiến trúc, các khái niệm, các thành phần dịch vụ,
mối quan hệ với WSS, vấn đề bảo mật
> Công nghệ Web Parts: cơ sở hạ tầng, các khái niệm, lập trinh với Web Part
SharePoint là một chuẩn công nghệ của Microsoft để xây dựng pôörtal`dựa trên nền tảng NET Khi tìm hiéu SharePoint ta nén tìm hiểu cácètRành phần sau: Windows SharePoint Service (WSS), SharePoint Portal Server.(SPS) Và công nghệ Web Part WSS giống như là một thành phần “nền” chạy trênầáy, có chức năng
tạo ra các trang SharePoint cũng như tạo ra các thôi ttường thực thi cần thiết; ta có thể xem như nó là “một người” tạo ra và vận hành cơ sở:hạ tầng ở bên dưới Trong khi đó SharePoint Portal Server là một thành phần được xây dựng dựa trên nền
Windows SharePoint Services, nó gắn bó mật thiếtvới WSS nhưng có thêm các thành phần dịch vụ phong phú hơn všð8iông nhw “mot người tổ hợp nội đung” Còn Web Part là một công nghệ nhăm.tạo rấ các thành phần của trang Web có tính tùy
biến cao cũng như sự linh động trong đó, nó được thi hành trên một cơ sở hạ tầng
mà WSS đã cung cấpè Ttong \Cñươn§ này ta sẽ trình bày 3 khía cạnh nêu trên: WINDOWS SHAREPOINT)SERVICES, SHAREPOINT PORTAL SERVER va công nghệ WEB PART
3.7 MicrosoftWindows SharePoint Services
3.1.1 Téng quan
Windows SharePoint Services 1a mot dich vu chay trén nén hé diéu hanh
Windows*Server 2003 Nó cung cấp nền tảng cho việc xây dung cdc Web Portal rầang tnh cộng tác để chia sẻ thông tin cũng như tài liệu giữa các thành viên trong một nhóm hay trong một tổ chức nào đó một cách dễ dàng và đáng tin cậy Người dùng có thể truy cập đến một Web site WSS bằng cách sử dụng một trình duyệt
hoặc thậm chí thông qua các đặc trưng về tính cộng tác được tích hợp trong các sản phẩm của Microsoft như Word hoặc Excel Trong WSS có các khái niệm như:
documents, tasks, contacs, events chúng là những thông tin dùng trong việc trao đổi giữa các người dùng WSS cũng cung cấp cơ sở hạ tâng bên đưới cho phép tạo giao diện người dùng thông qua các công nghệ như Smart Page hoặc Web Part, đó
là một đặc trưng rất mạnh mẽ của SharePoint bởi vì mỗi trang WSS cung cấp một giao diện người dùng với khả năng mở rộng và cá nhân hóa cao độ Windows SharePoint Services đồng thời cũng cung cấp nền tảng để phát triển các ứng dung,
chang han cac công thông tin điện tử, hội thảo trực tuyến dựa Web, e — mail Môi
trường WSS cũng được thiết kế để dễ dàng và linh động hơn trong việc triển khai, quản trị cũng như phát triển các ứng dụng
Trang 35Cac WSS site duoc xây dựng từ các Web Part và các thành phần Windows
dựa ASP.NET; các Web Part được thiết kế để có thể đưa vào các trang và được cầu
hình bởi người quản trị cũng như người dùng, từ đó tạo ra các ứng dụng hoàn chỉnh WSS cũng sẵn có nhiều Web Part và có thể đem vào sử đụng được ngay; tuy nhiên, các Web Part cũng có thể được phát triển bởi một bên thứ ba
Windows SharePoint Services cũng được tích hợp với môi trường phát triển NET trong Windows Nó cung cấp mô hình đối tượng dựa trên nền tảng NET và ta hoàn toàn có thể lập trình với các đối tượng này, chắng hạn SPList, SPWeb, SPSite bên cạnh đó WSS_ cũng hỗ trợ các chuẩn công nghiệp khác như Web Services
3.1.2 Kién trac cua Windows SharePoint Services
Hệ thống WSS được xây dung 6 phia trén cla Windows Serven2003, IIS6.0
va ASP.NET Hình sau cho thây sự tương thích giữa WSS và các thành phân khác:
Hinh vé 3.1: Kién trac Windows SharePoint Services
WSS là thế hệ thứ hai của cong nghé SharePoint, thế hệ thứ nhất được xây
dựng đựa trên nền IIS có tên là SharePoint Team Services (STS) Nền STS tương tự như WSS, trong đó nó cung cấp một môi trường hợp tác để chia sẻ các đữ liệu dựa trên danh sách (list-based data) và các tài liệu (documents) Tuy nhiên STS không được xây dung dựa trên nên NET hay ASP.NET, thay vào đó nó được xây đựng bằng cách sử dựng phần mở rộng của trình chủ ISAPI
Tùy biến và mở rộng các Web site STS là rất khó vì có ít các công cụ hỗ trợ Trong khi đó đối với WSS thì công việc này trở nên rất đễ dàng bởi vì WSS tương thích với các công cụ thiết kế Web (vi du FrontPage 2003) WSS là mô hình có thể
mở rộng dễ dàng bởi vì ta có thể viết các ứng dụng tùy biến cũng như các Web Part cho các trang WSS sites và SPS portal sites với công cụ Visual Studio.NET sử dụng
C# hoặc Visual Basic.NET
Trang 36STS và thế hệ thứ nhất của công nghệ SharePoint cũng gặp phải các vấn đề
về mặt mở rộng hiệu năng bởi vì kiến trúc của STS phụ thuộc vào máy chủ Web
(front-end Web servers), diéu nay lam cho việc mở rộng một máy chủ Web sang sử sụng một cụm máy chủ trở nên rất khó khăn Trong khi đó kiến trúc của WSS không dựa trên trạng thái của các máy chủ Web, thay vào đó nó được xây dựng dựa trên một kỹ thuật lưu trữ tích hợp, nơi mà tất cả các đữ liệu đựa trên dạng bảng (1ist)
và các tài liệu liên quan đến Web site được chứa trong cơ sở đữ liệu SQL Server
Kỹ thuật lưu trữ này cho phép triển khai WSS từ một máy chủ sang thành một cụm
PN] Back-end Database Server
CC store for lists and documents
WSS: làm Việc thông qua 2 cơ sở đữ liệu SQL Server : CSDL cấu hình (cônfiguràtion databases) và CSDL nội dung (content databases) CSDL cấu hình lừu trữ các thông tin cấu hình triển khai cho mỗi máy chủ Web, máy chủ ảo trong IIS Và các WSS Web site còn CSDL nội đung lưu trữ đữ liệu liên quan đến các WSS Web sites
WSS chỉ có một CSDL cấu hình trong mỗi hệ thống triển khai, đối với một
hệ thống triển khai đơn giản ta chỉ cần một máy tính chạy cả máy chủ Web và máy
chủ CSDL SQL với một CSDL cẫu hình và một CSDL nội dung Hệ thống triển
khai phức tạp hơn là một cụm máy chủ với nhiều máy chủ Web và một hay nhiều máy chủ CSDL SQL Server Tuy nhiên trong tất cả các trường hợp này, chỉ có một CSDL cấu hình duy nhất CSDL cấu hình là nơi cung cấp các thông tin giúp liên kết
tất cả các máy chủ Web và máy chủ CSDL
Mỗi CSDL nội dung lưu trữ đữ liệu cho một hay nhiều WSS Web sites Dit
liệu của WSS được lưu trữ trên các site cơ sở bao gôm các bảng (list) và các tài liệu
Trang 37(documenis) cũng như các thông tin gắn liền với tùy biến và cá nhân hóa Kỹ thuật
lưu trữ tích hợp này là một tiến bộ vượt bậc so với STS (thế thệ trước của WSS)
trong đó đữ liệu về các site được lưu trữ trên tệp hệ thống và trong bộ đăng ký thay
vì trong CSDL Mọi thứ được lưu trữ trong CSDL làm cho việc sao lưu, phục hồi
các Web sites trở nên rất đễ dàng đôi với WSS
Nêu nhìn từ mức cao, kiên trúc hệ thông của WSS sẽ như sau:
Load Balancing
Hinh vé 3.3: Khung nhìh mức cao vé WSS
Như vậy sẽ có ba lòại thành ðhân máy chủ:
e Một hãy nhiều máy chủ Web (fronf-end Web servers)
e Một cơ sở dữ liệu cấu hình
è Mộthaynhiều máy chủ cơ sở dữ liệu nội dung
Ta èó thể eài đặt cá ba thành phần này trên một máy tính, hoặc trên nhiều máy tronb một:'cụm máy chủ (server farm) Tât cả các thông tin trạng thái được lưu trữ tròng CSDL câu hình và CSDL nội dung trong Microsoft SQL Server
Trong một cụm máy chủ chạy WSS, các máy chủ Web là các bản sao không trạng thái (stateless clones) Một yêu cầu có thể được chuyên đến bất kỳ máy chủ nào thông qua hệ thống can bang tai (load balancing system), va bat ky site nao cũng có thê được phục vụ bởi bất kỳ máy chủ nào Các máy chủ Web kết nói tới hệ thống máy chủ CSDL để lẫy đữ liệu cho phép nó xây đựng và trả về các trang web tới máy khách Khi một máy chủ web vì một lý do nào đó bị hỏng, các yêu câu lập tức được chuyên cho các máy chủ web khác, từ đó ta có thể nâng cao khả năng phục
vụ của hệ thống bằng cách chạy thêm các máy chủ Web Tài liệu và các dữ liệu
người dùng cuối không lưu trữ trên máy chủ web mà được lưu trữ trên máy chủ CSDL
Máy chủ CSDL nội dung chứa nội dung các site, bao gồm tài liệu, tệp trong
thư viện tài liệu, đữ liệu dạng bảng (Lisf), các thuộc tính của Web Part, tên người
Trang 38dùng, quyên Khơng giống máy chủ Web, các máy chủ CSDL nội dung là khơng giống nhau, tất cả đữ liệu của một site nào đĩ năm trên một CSDL nội dung trên chỉ một máy tính SQL Server cung cấp khả năng phục héi để giúp hệ thống khơng bị ngưng trệ nếu CSDL bị hỏng
CSDL cấu hình lưu trữ tất cả các thơng tin quản trị về mặt triển khai, chỉ dẫn các yêu cầu tới các CSDL nội dung phù hợp, và quản lý cân bằng tải cho các máy
chủ CSDL Khi một máy chủ web nhân một yêu cau về một trang trên một site nào
đĩ, nĩ sẽ kiểm tra CSDL cấu hình để xem xét xem CSDL nội dung nào chứa dữ liệu
về site này
3.1.3 Các bảng cơ sở dữ liệ
Sau đây là bảng liệt kê một số bảng trong CSDL của SharePoint:
Các bảng trong cơ sở dữ liệu cấu hình:
AntiVirusVendors Nhà phân phối phan mém ¢héng virus
CustomTemplates Mau xuat hién trong danh sach mau (template picker)
Databases Cơ sở dữ liệu nội dung và›cãê thiết lập liên quan
Globals Các thiết lập ảnhhtởng/đến toần bộ site trong máy chủ áo
trong đồ hình Windows SharePoint Services
Installed WebPartPackages | Cac gĩi Web Pa†t đĩ săn'trong máy chủ ảo
Servers Máy cđủ vật lý trong kién tric Windows SharePoint Services
Services Caedichevu nhwila CSDL, Web, va dich vu mail co trong
Windows)ShareP oint Services
Sites CaoSites,bén trong Windows SharePoint Services
VirtualServers Cac may cht ảo và các thiết lập liên quan
WebPartPackages Các gĩi Web Part Packages được cài đặt trong một mơ hình
Bảng 3 1: Các bảng trong CSDL nội dung
Mơt sơ:quan hệ pTữa các bảng được chỉ ra như sau:
alum Heme | Condensed Tee 4 | CoaunnMama [Condensed Typa =| Codunntame | Gondansad Typo =|
RaplyIafdfsie — rhiảichar(Z55) —_ |sIecaurt rt — |Lzfaifisdsziuk nưahạ(1z8)
Trang 39ComMd Document discussions
Deps Document dependencies
DiskWarningDate Ngày và giờ của cảnh báo cuỗi cùng vệ giới hạn đĩa
Docs Các Documents và các thư mục document
DocVersions Lich sử phiên bản của tài liệu từ thư viện tài liệu
EventCache Bộ nhớ đệm cho các cảnh báo
EventLog Cac ghi dau su kién canh bao
HT Cache Bộ nhớ đệm đề chuyên các tài liệu lên xem ở trình duyệt
HT Settings Các thiết lập đề xem ở chế độ HTML
ImmedSubscriptions Các cảnh báo được thiết lập ngay khi các thay đôi xảy
Links Các liên kết được tính toán lại trong một thay đôi site
Lists Lists trong site
NavNodes Các nút hiển thị ở thanh truy xuất (navigation bars.)
Personalization Các cá nhân hóa được thực hiện với Web Parts
SchedSubscriptions Các cảnh báo được gửi dựa trên cơ so ngay hay tuan
SiteGroupMembership | Thanh vién cua cac cross-site groups
SiteGroups Cross-site groups
Sites Sites trong CSDL ndi dung
TimerLock Các giản đồ khóa chỉ ra xem máy chủ nào đăn Yới CSDL nào
UserInfo Thông tin người dùng
WebCat Liên kết giữa Web sites Và areas
WebGroupMembership | Danh sách thành viên của nhóm site
WebGroups Các nhóm Sitế (hhư là Administrator, Web Designer) cho site WebMembers Thành viên.của một site
WebParts Web Parts co sanicho the sites
Webs Cac/Subsites liếñ quan đến 1 site
WelcomeNames Các tài liệu mặé định cho một site
Gellise @ubthor
_ 'tqrzTrinrlrrm | Trmet.res.edl fh * (all Colne)
Pixuha rấa L_ Emhhefilauli ty
Trang 40
3.1.4 Cấu hình cho Windows SharePoint Services
Có hai kiểu cấu hình cho Windows SharePoint Services: stand-alone hoặc
server farm, tùy theo quy mô của từng ứng dụng cụ thể mà ta nên chọn kiểu cấu hình nào cho phù hợp Đối với các ứng dụng nhỏ ta có thê cấu hình theo kiểu stand- alone, còn đối với các ứng dụng lớn hơn (chang han áp dụng cho các tổ chức lớn hoặc các nhà cung cấp dịch vụ) thì ta có thể cầu hình theo kiểu server farm Sau đây
ta sẽ trình bày về 2 kiểu này
3.1.4.1.Stand-alone Server
Câu hình theo kiêu một máy chủ có các đặc điểm sau:
s* Có một máy chủ chạy Windows SharePoint Services
s* Các site va subsite được nhóm lại trong tập hợp site (Site Collection) trong mỗi máy chủ ảo (Virtual Server) trong IIA Một bộ.lọe ISAPI {Internet Server Applications Program Interface) dựa vào các URL dé chi fa site trén máy chủ ảo đó
* Mỗi máy chủ ảo đều có riêng một tập hợp các CSDL ñộï*'đung trong SQL Server còn CSDL cấu hình sẽ kết nối mỗi mẩy chủ äođới CSDL nội dung tương ứng với một Web site cho sẵn
Sơ đô sau cho thây kiên trúc Window§ SharePoint Services với câu hình stand- alone server:
Windows SharePoint Services Architecture
Client System Server System
Kiến trúc theo kiểu server farm có các đặc điểm sau:
Có nhiều máy chủ chay Windows SharePoint Services va SQL server s* Các site được nhóm vào trong các Site Collection trên mỗi máy chủ
ảo trên IIS có Windows SharePoint Services Bộ lọc ISAPI sử dụng các URL để định vị các site