ĐẠI HỌC QUỐC GTA HA NOT 'TRƯỜNG ĐẠI HỌC CÔNG NGHỆ DINH THI HUYEN TRANG UNG DUNG CONG NGHE JAVA WEB SERVICE VÀ XSL TRONG VIỆC XÂY DỰNG CÁC DỊCH VỤ NGÂN HÀNG TRỰC TUYẾN LUẬN VAN THAC
Trang 1
ĐẠI HỌC QUỐC GTA HA NOT
'TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
DINH THI HUYEN TRANG
UNG DUNG CONG NGHE JAVA WEB SERVICE
VÀ XSL TRONG VIỆC XÂY DỰNG CÁC DỊCH VỤ
NGÂN HÀNG TRỰC TUYẾN
LUẬN VAN THAC SY
Tả nội, 11/2007
Trang 2
ĐẠI HỌC QUỐC GIÁ HÀ NOT
TRƯỞNG ĐẠI HỌC CÔNG NGHỆ
DINU TIT WUYEN TRANG
UNG DUNG CONG NGHE JAVA WEB SERVICE
VA XSL TRONG VIEC XAY DUNG CAC DICH VU
NGAN HANG TRUC TUYEN
LUAN VAN THAC SY
ANgùnh: Công nghệ thông tim
Ma sd: 1.01.10
Gido vién Incéng din: PGS TS Nguyén Vin Vy
Hà nội, 11/2007
Trang 3
LOI CAM DOAN
Tôi xin cam đoạn kết quả đạt được trong luận văn là sản phẩm của riêng cả nhân, không sao chép lại của người khác Trong toàn bộ nôi dung của luận văn, những điểu được trình bày hoặc là của cá nhần hoặc là được tỗng hợp tử nhiều
nguồn lai Tiệu Tắt cả các lái liệu [ưm khảo đền có xuất xứ rố rằng và được trích
dẫn hợp pháp
Tôi xin hoàn toàn chịu trách nhiệm và chịu xmọi hình thức ký luật theo quy định cho 1éi cam doan eda wink
Hà Nội, ngày 31 tháng 10 năm 2007
Dinh Thi luyén Trang
Trang 4LỜI CẢM ƠN
“Trước tiên em xim được bày lô sự trân trọng và lòng biết ơn đối với thầy giảo PGS.'S Nguyễn Văn Vy, giảng viên bộ mên (ông Xphệ Phần Mềm ~ Khoa
Công Nghệ Thông Tin Trường Dại học Công Xghề - DHQGHN Trong suốt
thời gian học và làm luận văn tốt nghiệp, thầy đã dành rất nhiều thời gian qui bán
đễ tận tình chỉ bảo, hưởng dẫn, định hướng cho em trong việc nghiên cửu và thực hiện luận văn
Em xin được cảm ơn các GS, TS, các thầy cô trong trường tại học Công
Nghệ - ĐIIQGITN đã giảng đạy em trong quả trình học tập, thuc hành, làm bài tập, đọc và nhận xét luận văn của em, giúp em hiểu thấu đáo hơn lĩnh vực mà em
đang nghiên cứu, những hạn chễ má em cần khắc phục trong việc học tập, nghiên
cửu và thực hiện luận văn này
Xin cam ơn bạn bẻ, đồng nghiệp và nhất là các thành viên trong gia đình đã
tạo 1nọi điều kiện tốt nhất, đông viên, có vũ tôi trong suốt quá trình học tập va
lâm luận vần tốt nghiệp
Hà nội, ngày 31 tháng l0 năm 2007
Dinh Thi Huyén Trang
Trang 5TOM TAT KET QUA
Luận văn này bao gồm những kết quả sau:
Nghiên cứu và trình bảy các khái niệm nên tảng, những công nghệ liên quan để xây đựng một Web Service
Nghiên cứu và trình bảy chỉ tiết các bước để xây đựng, cách thức triển khai và sử đụng một Web Service
Phân tích tiết kể sử dụng công nghệ hướng đổi tượng “Hệ thông thông tin khách hàng trực tuyến”
Áp dụng công nghệ Web Serviee để triễn khai, xây dựng hệ thông
trên Ứng dụng đã kết nỗi được với dữ của hộ thông (lanh toản trong ngân hàng, cho phép khách hàng cỏ thể truy vẫn thông tin về tài khoản, cóc giao địch phát sinh trên tài khoản mở tại ngân hằng
để
Trang 6MỤC LỤC
DANH MUc CHU VIET TAT
DANIEL MUC TIENT VE
1.13 Uu thể và ứng đụng của Web Service
1.1.4 Câu trúc của Web SeTViS8 cà keeaeerrrrrerooeoeTT
1.2 Củc công nghệ nền tăng của Wcb Survice - 12
1.2.1.1 Khải niệm về XML
1.2.1.2 Cáo quy tắc cú pháp của XML
1.2.1.3 XML có định dạng tốt (Well-formed XML) 14 1.2.1.4 XML đúng đắn (Valid XML)
1.3.1 Câu Irúc thành phần của hệ thông và hoạt động của nó 29
1.3.1.1 Các thành phần cia hé thang Web Service 29 1.3.1.2 Các bước xây dựng và hoạt động của hệ thông Web Service 30
1.3.2 Các giai đoạn trong quá trình xảy dựng
CHƯƠNG 2 XÂY DUNG HE THONG WEB SERVICES CUNG CẬP CÁC DỊCH VỤ THÔNG TIN KHÁCH HÀNG TRỰC
3.1 Mô ta bal toate cee eects nents — - 32
Trang 7
Đính Thị Huyền Trang — KIIT3
2.2.4.1 Nhân viên hệ thông mức quin tr chung (Adnin) 8 2.2.4.2 Nhân viên chủ nhánh mức quản trị chi nin (Branch Admin) 39 2.2.4.3 Khich hang (Customer) la 2.2.44, Core Bank 40 3.2.5 Mô hình ca sử dụng của hệ thông eseeeeseo.đT 2.2.5.1, Ma hinh ca sử dụng mức cao - 4I 2.2.5.2 Mô hinh các gỏi ca sử dung 4I 2.2.5.3 Mô tá chủ tiết ca sử dựng su a 2.3, Mé hinh phan tich hệ thống — 51
Trang 8Đính Thị Huyền Trang — KIIT3
Trang 9DANH MUC CHO’ VIET TAT
Từ viết tắt Nội dung
FTP File Transter Protocol
HTTP Hypertext Transfer Protocol
HTTPS Hypertext Transfer Protocol Secure
SMTP Sumple Mail Transfer Protocol
SOAP Sumple Object Access Protocol
UDDI Universal Description Discovery and Integration
WSDL Web Services Description Language
XSL eXtensible Stylesheet Language
XSLT eXtensible Stylesheet Language Transform
Trang 10
DANH MỤC HÌNH VẼ
Hình L.1: Các lớp của Web Serviee -
Hình 1.2: Ung dung web không sử dựng Web Servioe 8
Hình 1.3: Ứng dựng web sứ dụng Web Serviee (Ì) ceeeoeooeoorỞ Hùnh 1.4: Ứng dựng wcb sử dụng Web Serviee () 10 Linh 1.5: Thành phần của Web Service - " Hình Ló: Mô hinh trình diễn đữ liệu XML, rên W&b e2
Hình L.7: Câu trúc của thông điệp SOAP ceeeeeeeeoe.28)
Llinh 1.9: Thông điệp yêu câu cửa SOAP cee 25
Hình 1.10: Thong dip hoi dap cita SOAP oa ceseeessseetestinessieeietesenn DS
Hình 2.4 Biếu đỗ ca sử đựng chỉ tiết của gói quản trị người đừng 43
Hình 2.5 Biến đỗ ca sử đụng chỉ tiết cúa gói quán trị thông tin địch vụ 45 Hình 26 Biểu đồ ca sử đụng cÍn tẾT cửa gói địch vụ khách bàng 46
Hình 2.7 Biểu đỗ tuần tự hệ thẳng thêm mỏi chỉ nhánh
Hình 2.8 Biểu đỗ lớp phân tích thực thí ca sử đụng thêm mới chỉ nhảnh 52
Tinh 2.9 Biéu d6 tong (4c ca sit dung thére tdi chi whanh 52
Hình 2.11 Biểu đồ tuần tự hệ thống thêm mới người quản trị chỉ nhánh 53
Hình 2.15 Biều đồ tuần tự hệ thông đăng ký khách hàng 35
Llinh 2.16 Biển đồ lớp phân tích thực thụ ca sử dụng đăng ký khách hàng S6 Hình 2.17 Đền đồ tương c cai ng đng ký kh băng .ŠT
Tinh 2.19 Biểu đồ tuần tự hệ thông vẫn tin lích sử giao dịch của tai Khodn 59
Trang 11
Đính Thị Huyền Trang — KIIT3
Linh 2.20 Biểu đồ lớp thực thi ca sử đựng van tin lịch sử giao dich
Biểu đồ tương tác ca sử dụng vẫn tín lịch sử giao địch
Hình 2.22 Giao điện vân tin lịch sử giao địch của tai khoản -
Hình 2.23 Biển đồ mô tả tống hợp các biễu đô phân tích khái niệm của mnột
sử dụng điễn hỉnh
Hình 2.21
Hinh 2.24, Chu trie của MexsageContext su
Linh 2.35 Quá trình xử lý thông điệp trên may chủ Axis
„ Mô hình tổng quan của hệ thông
Mô hình tương tác của hệ thông
Quả trình xử lý thông điệp trên ứng dụng
Kết quả biến đổi tải liệu XML sit dung XSLT
Mô hình báo mật của ứng dụng
Trang 12MỞ ĐẦU
Ngày nay, với sự phát triển rấi nhanh chống của xã hỏi cing nur ha tang
công nghệ thông tin, hầu như mọi doanh nghiệp cá nhân đễu cỏ sư trao đối, tìm
kiếm thêng tin trên Internet Nhu câu truy cập thông tin về tài khoăn cửa khách
hàng thông qua thư điện tử hay huy cập trực tiếp vào trang wcb của ngân hằng là
rất lớn IIơn nữa, việc truy cập thông tín qna Internet đem lại sự thuận tiện cho
khách hàng khu họ có thế xem thông tin tại bất cử vị trí, thời điểm nào họ muễn,
không phải trực tiếp đến quầy giao địch của ngân hàng
Để đáp ứng được yêu cầu đỏ cần phải xây dựng mệt hệ thẳng thông tin hỗ
trợ khách hãng thông qua Internet Hệ thông này đảm bảo cho khách hàng có thể
Imy cập được các thông lin về tài khoản, về giao dịch trên tải khoản khí truy cập vào trang web của ngân hàng Dây cũng chỉnh là cơ sở nền tảng, là giai đoạn đâu của quả trình xây đựng một hệ thống giao dịch trực tryển, một mg đựng banking
online thee ding nglifa eda nd
“Trên thực tẻ, hiện ray hầu hết các ngần hàng tại Việt Nam đều có một hạ
tầng ứng đụng công nghệ thông tin cho việc Thanh toán và quản lý dữ liệu ngân Hàng tập trung, côn được gợi là Core Bank, Do vậy với yê cầu đội ra như trên,
ching ta cân xây đựng ứng dụng có thể kết nỗi với hệ thẳng Core Bank để lấy thông tin về các hoạt động giao dịch cũng như có thể thực hiện các giao dịch một cách trực tuyến Vi vậy “Ứng dụng công nghệ Java Web Service vi XSL trong việc xây dựng các địch vụ ngân hàng lrực tuyển” đã được chọn làm đề lãi cho
lun văn này
Luận vần tốt nghiệp này trình bảy một công nghệ có thế để dàng giải quyết
Đài loắn tiên theo hưởng nổ, hiện đại Đỏ chính là công nghệ Web Services Nội dung chính của luận văn bao gầm 4 chương:
Chương 1: Giới thiệu những công nghệ nền ting cia Web Service
Chương 2: Mô tà bài toán và xây dựng bé thong Web Service cung cap cac địch vụ hỗ trợ cho hệ thống thông tin khách hàng trực tuyển
Chương 3: Xây dựng hệ thông thông tin khách hàng trực tuyến lên nền
ting Web Service
Cudi củng lá kết luận và những hướng phát triển tiếp theo của để tài
Trang 13CHƯƠNG 1 CƠ SỞ LÝ THUYẾT CỦA WEB
SERVICE
1.1 Web Services
1.1.1 Giới thiệu
Lập trình hưởng đổi tượng đã được giới thiệu và hửa hẹn vẻ khả nẵng tải sử
đụng mũ nguồn trên nhiều hệ thống và kiển trúc Các nhủ lập trình đã tiên đoán
rằng, họ thậm chí sẽ không cần phải tạo ra các lớp mới vì kho mã nguồn đã sở
hữu đú các lớp cần thiết Các nhà cung cấp thư viên mã nguồn thu lợi từ việc
cung cắp các thư viện lớp thực hiện các chức năng cơ bản cho các lắp hình viên,
ví đụ các thư viện hương mai của C—— chứa các phương thức thao lác chuẩn trên
ngày và giờ Điều này giúp các lập trình viên tiết kiệm đảng kế thời gian Khi các
ngôn ngữ mới như Java vá Cứ xuất hiện, các chức năng cơ bản nảy mặc nhiên lá
một phần của ngôn ngữ Tny thiên, khái niệm mội kho mmš nguồn tập trung
không phái lúc nào cũng đúng Vì đụ, các nghiệp vụ của các công ty hiên kháe nhau, không thế có một kho tập trung cho các loại mã như vậy Trong trường hợp
nảy, các thư viện thương mại chỉ oó thể cung cấp các chức năng cơ bản và các
lớp tổng quát cân thiết, nhưng các th viện này không thé chứa các chức năng
nghiệp vụ, vi chứng là duy nhất cho mối công ty Dôi với một số các nghiệp vụ,
như nghiệp vụ của ngắn hàng, các nhà cũng cấp có thế tạo ra các gói thư viễn
ding chung vi luật cửa chính phả đấm bảo các nghiệp vụ đó phải Luân theo vie
logie nhất định
Ban đầu, các dối tượng chỉ có thể lập trảnh đễ chạy trên cùng một máy, ví
dụ nữu các lập tin DLL (Dynamic Link Library — Thư viện liên kết động) Các
thư viện này chứa thông tin cho các ng dung khác đùng để tạo các đổi tượng,
Tuy nhiên, nêu trong một tập đoàn lớn, với yêu cầu phái bảo trí hàng trầm ngàn
máy trạm và các ứng đụng liên mdi he thang, vi
mỗi hệ thông sẽ là một vẫn đề gây đau đầu khi phải tiễn hành bảo trì Do đó, việc
dùng các đối tượng từ xa là một cách tuyệt vời để sử dụng lại mã nguồn ở mức
ứng dụng trên một máy cục bộ Các đối tượng tử xa là các đổi tượng được tạo ra
thủ trung tâm và cỏ thễ được truy gập lử máy trạm thông qua
ó những thư viện này liên
mạng, kể cả Intemet Một đối tượng từ xa phái luồn sẵn sàng cho môt chương
trình thông qua mang hoặc Internet Các công nghệ như COM (Conanon Object
Trang 14Đính Thị Huyền Trang — KIIT3
Manifest, CORBA (Common Object Request Broker Architecture), RMI (Remote Method Invocation), RPC (Remote Procedure CaH) được dùng đễ gọi đối tượng từ xa [11] Mục tiêu của các phương thức này là cho phép người lập trình có thể thay đổi mã tại một nơi và tất cả các hệ thêng và ứng dụng sứ dụng
các phương thức này ngay lập tức được truy cập đến mã nguồn mới Điều bắt lợi
ả khi việc lập trình trên máy chủ có lỗi từủ tắt cả hệ thông đầu bị lãi
Microsoft đã tạo ra một giao thức chuẩn đựa trên XML gọi là SOAP
(Simple Object Access Protocol — Giao thức truy cập đối tương đơn giản) Giao
thức này là sự kết hợp việc lưu trữ dữ liệu đưới dinh dang XML va mét giao tức chuẩn cho phép truyền tải dữ liệu qua Inlemel Xhững giao thie wi SOAP thường sử dụng để truyền tải bao gồm SMTP (Simple Mail Transfer Protocol), ETP (File Transfer Protocol) va HTTP (Hypertext Transfer Protocol [7] Các nhà phát hiển thường xem những giao thức này như là chồng các giao thức của Web Service
Điễm khác biệt giữa SOAP va mOt Web Service: SOAP là một giao thức đùng để đi chuyển đữ liêu trên Tntemat, còn một Web Service là một đổi tượng
đừng SOAP trong việc truyền tải đữ liên đến một ứng dựng hoặc một trang weh
Trước đây, khi chưa có một chuẩn chung, ông ty lớn đã tự xây dựng các chuẩn riêng để cài đặt các Web Service theo cách riêng của họ Microsoft có công nghệ Distributed COM/ Obizet RPC, tổ chức OMG đưa ra IIOP/CORBAA, lập đoàu Sun Microsystem có công nghệ Java RMI/RDC Đó là các giao thức
đạng nhị phần, không tương thích với nhau Sau đó tô chức WAC đá thông nhất chun SOAP (Simple Obieet Acesss Protocol) với khả năng luu trữ thông tin và
trao dối đữ liệu dựa trên XML
Liện tại với SOAP, Web Servios có thể coi là đã có một giao thức chưng, cho phép các ứng dụng phía máy khách có thế được viết bằng bất kỹ ngôn ngữ
nảo, chạy trên bất kỷ hệ thống nào, có thế kết nổi và tương tác với các Web
Service thong qua twang Inlranet/Inlemet, Tiện thân SOÁP không định nghữa rác
cũ pháp đữ liệu được truyền đi mả SOAP cung cấp một cơ chế đóng gởi các dữ
Trang 15Đình Thị Huyền Trang— KIIT3
liệu định dạng XML và truyền qua mạng theo các chuẩn như HTTP, HTTPS,
_ Lớp giao thức
Hình 1.1: Các lớp của Web Service
1.1.3 Ưu thế và ứng dụng của Web Service
'Web Service có những tru thẻ sau:
Chia sẻ đữ liệu Web Service cho phép các ứng dụng chia sẻ dữ liệu, cung
cập khả năng gọi đên các ứng dụng khác mà không cần quan tâm đến các ứng
đụng đó được phát triển bằng ngôn ngữ nào, chạy trên hệ điều hành hoặc môi
trưởng nào, v.v Mặc đủ các ứng dụng Web Service là độc lập với nhau, nhưng
chúng có thể liên kết với nhau để thực hiện một công việc cụ thể Do đó, người
dùng có thể sử dụng bất kỳ chương trình phía khách nào để gọi đền các phương thức của các Web Service, tương tác và lây kết quả về theo yêu cầu để xử lý
Chỉ phí thấp: Web Service được xây dựng trên công nghệ XML Nhu vay
dữ liệu có thể được truyền qua các môi trường và hệ điều hảnh khác nhau mà
không bị phụ thuộc vào các ngôn ngữ lập trình được sử dung Do đó, giảm được
chỉ phí và thời gian để xây dựng một môi trường giao tiếp dữ liệu linh hoạt giữa
các hệ thông khác nhau
Trang 16Dinh Thị Huyền Trang—K11T3
Thông tin được cập nhật thường xuyên và linh hoạt: Web Service không chỉ cho phép các hệ thông kết nổi với nhau mà còn cho phép kết nỗi thông tin giữa người sử dụng thông tin và các thông tin mà họ cần khai thác Sau đó thông tỉn có thể được sử dụng theo bat cứ một khuôn dạng nào mà người sử dụng thông tin mong muốn Người sử dụng thông tin có thể yêu cầu bât cứ thông tin nảo, tại
một thời điểm bắt kỳ từ địa điểm cung cấp các địch vụ Web mà không phải đợi
thông tin được chuyển lên theo định kỷ
Lượng thông tin phong phú: Tăng khả năng thu thập và trao đổi thông tin
từ nhiều nguồn khác nhau thông qua việc liên kết thông tin giữa các Web Service Do đó, giảm được gánh năng lưu trữ dữ liệu tại trung tâm lưu trữ (khả năng lưu trữ phân tản)
Khả năng bảo mật cao: Các phương thức của Web Service có thể yêu cầu
một số thông tín từ phia người dùng trong các yêu cầu được gửi đến cho chủng
Các thông tin trao đổi (mô tả bằng XML) có thể được mã hóa theo chuẩn mã hóa
XML Nếu các Web Service sử dụng các phương thức trao đổi đữ liệu dưới dang nhị phân (thông qua cơ chễ gọi thủ tue tirxa — Remote Procedure Call), chúng sẽ được tăng cường bảo mật bởi chính các công nghệ RPC của từng nhà cung cấp
dich vu [11]
Hình 1.2: Ứng dụng web không sử dụng Web Service
8
Trang 17Dinh Thị Huyền Trang— KIIT3
Khả năng ứng dụng của Web Service vào các ứng dụng hiện nay là hết sức
to lớn Ta hãy xét một vi đụ về việc đặt vẻ máy bay Bình thường, nêu một khách
đặt vẻ máy bay qua trang web của một đại ly ban vé may bay, anh
ta sẽ phải biết được thông tin vẻ các chuyển bay phù hợp hiện có và điển vào
phiếu đặt vé máy bay những thông tin liên quan đến chuyên bay mà anh ta muôn Khi đó, trước hết anh ta sẽ phải tra cửu trên trang web của hãng máy bay hàng
tiếng đông hồ để tìm ra các thông tin đỏ (thông tin về các chuyển bay còn vẻ hay:
hết vé, thông tin thời gian chuyền bay có thê đất vé được, .) Sau đó, do chương trình ứng dụng của đại lý bản vẻ và hãng máy bay không có dịch vụ trao đổi đữ liệu đăng ký vẻ máy bay, nên anh ta phải ghi lại các thông số chuyển bay mà anh
ta chọn được, để điền vào biểu mẫu đăng ky vé may bay trong ứng dụng của đại
lý bản vé Như vậy, anh ta sẽ phải mât nhiều thời gian vả nhiều công sức đễ có
được môt chiếc vé cho mình
Hình 1.3: Ứng dụng web sử dụng Web Service (1)
Khi hãng máy bay và đại ly ban vẻ nâng cấp chương trình của họ, cung cap cic Web Service để chia sẻ thông tin chuyến bay và đặt vẻ máy bay, thi tinh hình lại khác Người khách hàng chỉ việc truy cập vào trang web của đại lý bán vẻ
Trang 18Dinh Thị Huyền Trang—K11T3
may bay đề tra cứu các thông tin về các chuyên bay được cung cấp thong qua
Web Service, sau đỏ chọn các thông tin từ dịch vụ này, chúng sẽ được tự động
điền vào biểu mẫu đăng ký mua vẻ máy bay Thời gian đặt vé có thể chỉ kéo dai trong vài phút
Một khi các khách sạn, siêu thị trực tuyến, công ty dịch vụ cho thuê xe cũng
có các ng dụng Web Service tham gia vào hệ thông trên, thì chủng ta sẽ có một
hệ thông dịch vụ liên hoàn hỗ trợ cho khách du lịch một cách hết sức hiệu quả, tiện lợi, nhanh chóng
Khi khách hàng, nhả cung cấp đều đã tạo được tiếng nói chung trong môi
trường trực tuyển, thỉ sự góp mặt của một tổ chức tải chính là điều tất yêu để
hoàn thiên dịch vụ Nó cho phép khách hàng, nhà cung cấp cỏ thể thực hiện
ngay các giao dịch thanh khoản chỉ ở một nơi bắt kỷ, mà không cần phải đến trực
thong tin a Wii] Web service
tuyến
Hình 1.4: Ứng dụng web sử dụng Web Service (2)
Mô hình phát triển các địch vụ theo công nghệ Web Service đặc biệt có thể
mạnh trong việc xây dựng các dịch vụ ngân hàng trực tuyến Xuất phát từ thực tế
10
Trang 19Dinh Thị Huyền Trang— KIIT3
là, các ngân hàng đều có một hệ thông phần mềm điện tử thực hiện quản lý các
giao địch của ngân hàng được áp dụng trên toàn hệ thông, việc xây dựng các địch
vụ ngân hàng trực tuyển chỉnh là việc kết nỗi giữa các trang web đến hệ thông
này theo hướng sử dụng địch vụ Với yêu câu đó, việc xây dựng các Web Service
lả một giải pháp lý tưởng Nó cho phép các trang web va ửng dụng desktop, cd
thể phát triển bằng bất kỳ ngôn ngữ nào, và hệ thông Core Banking của ngân
hàng cỏ thể trao đổi thông tin với nhau một cách dễ dàng, thuận tiện mà không
cần phải xây dựng ra một hệ thông chương trình chuyển đổi trung gian
Như vậy, nếu như Web Service được ứng dụng và triển khai rộng rãi thi các công việc cần xử lý sẽ đơn giản, nhe nhàng hơn nhiều mà mọi hoạt đông vẫn diễn
ra nhịp nhàng, uyễn chuyển và ăn khớp với nhau
1.1.4 Cấu trúc của Web Service
Web Service, theo chuẩn SOAP 1.2 của W3C [8], bao gồm có các thành phần sau:
Giao tiép bang
Người sử thông điệp XML, Web Services
dung dich vu
Hinh 1.5: Thanh phan cia Web Service
SOAP — Simple Object Access Protocol: giao thức chuẩn cho việc gửi vả
nhận các thông điệp thông qua giao thức HTTP và các giao thức truyền thông
i
Trang 20Đính Thị Huyền Trang — KIIT3
và các ứng dung cé thé dinh vi, tim kiém duge cae Web Service
1.2 Các công nghệ nên tảng của Weh Service
1.2.1 XML
1.211 Khái niệm vé XML
XML, viết tất của chữ eXtensible Markup Language, là ngôn ngữ dược tổ
chức rạng toàn cầu (W3C) định ngiữa Trong HTML, cáo thê được định ngiữa
và quy định trước, cẻn trong XML người dùng được phép tự do đặt tên các cặp thé để đúng khi cần Với khá năng này, XML không những cho phép mồ tá cầu trúc đữ liệu văn bản mà còn cho cả các kiểu đữ liệu khác, như hình ảnh, âm thanh,
Điếm khác biệt chỉnh giữa HTML và XML là, trong khi các cấp thé cia HTML chứa ý ngiữa về cách trình bảy (forruatng) các đữ liệu, thì các cấp thẻ
của XMI, cỏn bao hàm nội đmg cả về cảu trúc và trình điển của đí liệu Khi
muôn trình bày các đữ kiện của môt trang XML theo một kiểu nào đỏ, phục vi
hiển thị trền các tiết bị khảo nhan, la dùng một bảng định kiểu (Style Shect)
tương ứng cho nó [144] Ví dụ, muôn trình bày củng một nội dĩng tài liệu XML,
nhưng hiển thị trên hai thiết bị khách nhau, mnột trên PC và mới trên Mobile Phone (điện thoại di động), ta sé ding hai Style Shset khác nhau, một cho PC, cái kia cho Mobile Phone
1.212 Cúc quy tắc củ phdp cia XML
Cúc quy tắc củ pháp của XML được định ngiữa rất đơn giản nhưng chặt chế
giúp cho XMI, để học và để sử đụng Các tài liêu XMI, sử dụng các cú pháp tự
mô tả chỉnh nỏ Xẻ† ví đụ về một tài liệu XML sau
Trang 21Đính Thị Huyền Trang — KIIT3
l XML phiên bản 1.0 và bảng mã ký tự 1S0-8859-1 (Latin 1/Western European)
Dòng thứ hai mô ta phan ti géc (root element) Bén dang tiép theo la bén phan tit con (child element) cia phan tit géc va dang cudi cing 1a dinh nghifa két thic
phần tử göc Ta có thể đễ đàng nhận thấy rằng, tải liệu XML mày mổ lä xnột nhắc
nhỏ (note) từ “Jani” giti tới *Tova” do củ pháp của XML mô tá chỉnh nó
“Tắt cả các phần tứ XML đêu phải nằm trong một cặp thẻ Ví đụ:
<p>This is a paragraph</a>
Trong vi dụ trước, khai báo XML không cân phải nằm trong một cặp thẻ vì nó không phải là một phần lử XMI
Không giống như IITML, các thẻ trong XML phân biệt chữ hoa và chữ
> và < etter> la khác nhau va do d6 các Khê mở vả
thường Hài thẻ <Leti
thé dong phải được viết cùng một kiểu Ví đụ:
Khai bảo như trên là khởng hợp 1é do thé <addr
va </name>, con thê <¿ addr os s > lại ãm ngoài
năm trong cap thé <name>
Tất cả các tài liệu XML đều phải cé mét cap thé dinh nghĩa một phần tử
gc cia ti Tu Tal ca cic phan tử con cửa nó phải nănu trong phần lử gốc này
Tắt cả các phần tử trơng XML đều có thể có một hoặc nhiều các phần tử con
Những phần tử con này phải năm giữa cặp thẻ định nghĩa phân tử cha Ví dụ:
Xøupchild> </subzai1dz>
43
Trang 22Đính Thị Huyền Trang — KIIT3
</chi-d>
</rool>
Mũi phần tử XML có thể có các thuộc tính được định nghĩa bởi cấp tên /
giả trị Các giả trị này cân phải nằm trong đầu ngoặc kép (° ”) Định dang chung
Không giống nhu HTML, trong XML, tit cd cic ký tự trắng sẽ được giữ
nguyên và không bị loại bỏ khí sử dụng hay hiển thị
Củ pháp đề viết dòng chú thích trong XMIL, cũng giẳng như trong HTML:
<!—- NHộ- dung chú thích >
1.2.1.3 XML cé dink dang tit (Well-formed XML)
Mặc dù sỏ lượng cặp thẻ trong một tải liệu XML là không hạn chễ, nhưng
mdi (4 liệu uẫn phải tuân theo một số quá luật để được xem là đúng chuẩn (Wll-
Eonned) Nếu một trang XML không theo mẫu chuẩn thì coi như không dùng duge, không có chương trinh xứ lý nào co thể làm việc với dữ liệu bền trong nó
Do đó, khi xây dựng một trang XMI, cần phổi tudn theo đứng các quả Tuật sau:
1 ‘Tat cả các tài liệu XML đều phải có một phần tử gốc
2 Tất cả các phần tử phải nằm trong một cặp thé
3 Tắt cả các thẻ trong XMIL đu phần biệt chit hoa, chữ thường
4 Các cập thẻ không được xen kế nhau
5 Các giả trị của các thuộc tính phải nằm trong đấu ngoặc kép
Trang tai ligu XML tuan theo các quy luật trên (hay nói cách khác là đúng cú
Trang 23Định Thị Huyền Trang — KIIT3
1.21.4 XML đúng đẫm (Lalid XML)
XML chứa các dữ liệu bằng cách dùng những cặp thẻ, nhưng tự nó không đồi hỏi các dữ liệu nào cần phải có hay chúng phải liên hệ với nhau như thế nào,
Một cách để thực hiện việc này lả thêm vào phần đầu của một trang XML những
qui luật mà các đữ liệu phải tuân theo để trang XML được xem là có ý nghĩa Tập
hợp các qui luat do duge goi la Document Type Definition (DTD) DTD phai
nằm trong một định nghĩa Doc?E, có cầu trúc củ pháp như sau:
<!DOCTYPE root-element [element-declarations] >
DOcTYPE duge str dung để khai bảo phần tử gốc của XML Trong DTD, một
phân tử của XML được khai báo bằng một định nghĩa có củ pháp:
<!ELEMENT element-name category>
hoặc
<!ELEMENT element-name (element-content) >
‘Vi du dinh nghia kiéu dit ligu DTD được thêm vào đầu ñle XML:
<!ELEMENT title (#PCDATA)>
<!ELEMENT publisher list (publisher*) >
publisher children >
<!ELEMENT publisher (name, email?, homepage?,
address?, voice?, fax?)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT email (#PCDATA) >
<!ELEMENT homepage (#PCDATA) >
<!ELEMENT address (#PCDATA) >
<!ELEMENT yoice (#PCDATA)>
<!ELEMENT fax (#PCDATA) >
Trang 24Đính Thị Huyền Trang — KIIT3
DTD này qui định rằng mỗi tải liều XML phải cỏ một tiêu để và một danh
sách các nhà xuất bản Danh sách này có thế có một hay nhiều nhà xuất bản Mỗi
nhà xuất bản bắt buộc phái oó tên, còn những thành phần khác: email, homepage,
address, voice, fax véi đâu “2” ở phia sau có nghĩa là tủy chọn (eỏ hoặc không),
Ví đụ nhả xuất bản Aläeđ Publishing chỉ có tên và địa chỉ Các phần tử được
quy định bất buộc phải củ kiểu là Character (fPCDATA - Parsed Character Data) Trang XML nào tuân theo DTD đi kèm thì được gọi là ding din (valid)
Tuy nhiền, DTĐ cồn có nhiễu giới hạn, thì dụ như không định ngiữa chính
xác được các kiểu đữ liệu (đata type) Do đó, Microsoft để xướng so dé XML
(XML Schemas) với những ưu điểm sau:
- ĐỂ học và đìng hơn DTD, chính sơ đồ cũng là một trang thuộc loại XML
- _ Nó cho phép định nghĩa chỉnh xác các kiểu đữ liệu (data type)
-_ Dùng lại được các phần tử bằng cách thừa kế (ïnheritanee)
-_ Linh đồng, để thêm bớt các phần tử cúa sơ đô
Mới sơ đồ XMI, đền có phần tử gốc là <§choma>, phần lử này có thể bao gêm môi số thuộc tỉnh và được khai báo như sat: