1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÀI BÁO CÁO THỰC TẬP-NGHIÊN CỨU WEB SERVICES COMPOSITION SỬ DỤNG BPEL4WS

55 533 1

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 55
Dung lượng 2 MB

Nội dung

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG CƠ SỞ TẠI THÀNH PHỐ HỒ CHÍ MINH BÁO CÁO TỐT NGHIỆP HỆ ĐẠI HỌC Ngành : Công Nghệ Thông Tin Hệ : Chính quy Niên khóa : 2005-2009 Đề tài : NGHIÊN CỨU WEB SERVICES COMPOSITION SỬ DỤNG BPEL4WS Mã số đề tài : 405170081 Sinh viên thực hiện : Hoàng Xuân Tuấn Mã số sinh viên : 405170081 Người hướng dẫn :TS. Tân Hạnh Năm 2009 LỜI CẢM ƠN Qua 4 năm học tập,được sự tận tình chỉ bảo của các thầy cô trong Học viện đã trang bị cho em những kiến thức để có hành trang vào cuộc sống. Trong 6 tháng qua em xin chân thành cảm ơn thầy Tân Hạnh đã hướng dẫn em làm đề tài này và các bạn trong lớp cũng tạo điều kiện để em hoàn thành luận văn Do thời gian làm đồ án và kiến thức còn hạn chế nên không thể tránh khỏi những sai sót. Em rất mong nhận được sự đóng góp ý kiến của Quý thầy cô và các bạn sinh viên. Em xin gửi đến Quý thầy cô lời chúc sức khỏe và thành công. Em xin chân thành cảm ơn! Sinh viên: Hoàng Xuân Tuấn Báo cáo Thực tập LỜI NÓI ĐẦU Ngày nay, công nghệ thông tin đang là nền công nghệ mũi nhọn trong chiến lược phát triển kinh tế, xây dựng đất nước của hầu hết các quốc gia. Với sự phát triển của internet và với xu thế hội nhập chung của toàn thế giới, các tổ chức, các cơ sở doanh nghiệp cần bắt tay, phối hợp hoạt động và chia sẻ tài nguyên với nhau để nâng cao hiệu quả hoạt động. Hệ thống của các tổ chức doanh nghiệp ngày càng trở nên cồng kềnh hơn với việc triển khai hàng loạt các ứng dụng phân tán dựa trên nhiều hệ nền, kỹ thuật, công nghệ khác nhau. Những nghiên cứu gần đây cho thấy rằng: các khó khăn trong việc tích hợp các hệ thống có thể được khắc phục bằng cách định nghĩa thêm một tầng trừu tượng cho các hệ thống tin học hiện có và mới xây dựng. Tầng này sẽ được xây dựng dựa trên các chuẩn của web service. Công nghệ web service có thể được dùng để xây dựng cầu nối giao tiếp cho các hệ thống xây dựng trên những hệ nền, sử dụng những công nghệ hay chuẩn khác xa nhau, như là .NET, J2EE, CORBA, WebSphere MQ, hay các ứng dụng đóng gói. Việc kết hợp các dịch vụ trong mô hình SOA với quản lý các tiến trình nghiệp vụ là một giải pháp cho việc xây dựng các hệ thống tích hợp.Vì thế ngôn ngữ BPEL4WS ra đời để đáp ứng cho giải pháp trên. BPEL4WS được xây dựng dựa trên ngôn ngữ WSFL (Web Service Flow Language) của IBM và ngôn ngữ XLANG của Microsoft, nó kế thừa được những tính năng nổi trội của hai ngôn ngữ này (tính có cấu trúc của XLang và khả năng mô hình hóa của WSFL ). Mục tiêu của đề tài này … Sinh viên Hoàng Xuân Tuấn MỤC LỤC Hoàng Xuân Tuấn Đ05TH Trang 3 Báo cáo Thực tập  Contents CƠ SỞ TẠI THÀNH PHỐ HỒ CHÍ MINH 1 BÁO CÁO TỐT NGHIỆP HỆ ĐẠI HỌC 1 Hình1.1 Mô hình CORBA……………………………………………………………9 . 8 CHƯƠNG I:HIỆN TRẠNG 10 1.1. Phân tích, đánh giá một số mô hình kiến trúc phân tán hiện tại 10 Hình1.1 Mô hình CORBA 11 Hình 1.2 Mô hình EJB 12 Hình 1.3 Mô hình DCOM 12 1.2 .Các vấn đề phát sinh, nguyên nhân và biện pháp khắc phục: 12 1.3. SOA và web service giải quyết vấn đề tích hợp như thế nào: 13 Hình 1.4 Mô hình SOA sử dụng webservice 14 CHƯƠNG II: WORKFLOW 14 2.1. Khái niệm 14 2.2. Ích lợi áp dụng workflow: 14 2.3. Các dạng workflow 15 Hình 2.1 Mô hình tuần tự: 15 2.3.1.2.Song song (Parallel Split) 15 Hình 2.2 song song 16 2.3.1.3. Đồng bộ hoá 16 2.3.1.4. Phép chọn loại trừ (Exclusive Choice) 16 Hình 2.4. Mô hình chọn loại trừ 16 2.3.1.5. Trộn đơn giản (Simple Merge) 16 Hình 2.5.Mô hình trộn đơn giản 17 Hoàng Xuân Tuấn Đ05TH Trang 4 Báo cáo Thực tập 2.3.1.6. Chọn đa nhánh (Multi-Choice) 17 Hình 2.6.Mô hình chọn đa nhánh 17 2.3.1.7. Trộn đồng bộ hoá 17 Hình 2.7.Mô hình trộn đồng bộ hóa 18 2.3.1.8. Trộn đa nhánh 18 Hình 2.8.Mô hình trộn đa nhánh 18 2.3.1.9. Các vòng lặp tuỳ ý 18 Hình 2.9.Mô hình các vòng lặp tùy ý 19 CHƯƠNG III:TÌM HIỂU KHÁI QUÁT WEB SERVICE 19 3.1.Định nghĩa web service: là một công nghệ gọi từ xa có tính khả chuyển cao nhất hiện nay: mang tính độc lập nền, độc lập ngôn ngữ. Do đó, các chương trình code bằng các ngôn ngữ lập trình khác nhau, chạy trên các nền tảng (phần cứng & OS) khác nhau đều có thể trao đổi với nhau thông qua công nghệ này. 19 Hình 3.1.Mô hình webservice đơn giản 20 3.2.Đặc điểm của webservice: 20 Hình 3.2. Ứng dụng của webservice trong thực tế 20 3.3.Các thành phần chính trong Webservice: 21 3.3.1.XML: XML là một ngôn ngữ mô tả văn bản với cấu trúc do người sử dụng định nghĩa .Về hình thức XML có ký pháp tựa như HTML nhưng không tuân theo một đặc tả quy ước như HTML. Do web service là sự kết hợp của nhiều thành phần khác nhau , do đó web services sử dụng các tính năng và đặc trưng của các thành phần này để giao tiếp với nhau.Vì vậy XML là một công cụ chính yếu để giải quyết vấn đề này .Từ kết qủa này , các ứng dụng tích hợp vĩ mô tăng cường sử dụng XML.Nhờ có khả năng tổng hợp này mà XML đã trở thành kiến trúc nền tảng cho việc xây dựng web service 21 3.3.2.WSDL -Web Services Description Language : 21 Hình 3.3.Mô tả wsdl 21 3.3.3.UDDI - Universal Description , Discovery and Intergration: 21 Hình 3.4.Mô hình của UDDI 22 3.3.4. SOAP - Simple Object Accesss Protocol 22 Hoàng Xuân Tuấn Đ05TH Trang 5 Báo cáo Thực tập 3.4.Xây dựng web service: 23 3.4.1.1.Giai đoạn xây dựng 23 Hình 4.1.Kiến trúc của bpel process 25 4.1.Nội dung cơ bản: 25 4.1.1.Cấu trúc của bpel process: 25 4.1.2.Mối quan hệ với các Bussiness Partner: 27 Hình 4.2. Các thành phần trong bpel process 27 4.1.3.Trạng thái của BPEL process: 27 4.2.Các Activie cơ bản: 28 4.2.1.Invoke: 28 4.2.2.Receive: 29 4.2.3.Reply: 29 4.2.4.Assign 30 4.2.5. Throw: 32 4.2.6.Empty: 32 4.3.Các Active có cấu trúc 32 4.3.1.Xử lý tuần tự: <sequence> 32 4.3.2.Điều kiện <if>: 33 4.3.3.Thực thi vòng lặp <while>: 34 4.3.4. Song song và xử lý các điểu khiển lệ thuộc: <flow> 34 4.3.5.Xử lý đa nhánh:<foreach> 34 4.3.6.Scope (phạm vi): 35 CHƯƠNG 5: ỨNG DỤNG CHO BPEL 36 5.1.Mô tả nghiệp vụ: 36 5.2.Phân tích bài toán: 36 Hình 5.1.Lược đồ hoạt đồng 37 5.3.Xây dựng BPEL process: 37 5.3.1.Xây dựng các webservice liên quan: 37 Hoàng Xuân Tuấn Đ05TH Trang 6 Báo cáo Thực tập Hình 5.2.Interface của web service airline webservice 38 5.3.2 WSDL cho BPEL Process: 38 Hình 5.3. Interface bpel process 38 5.3.3 Định nghĩa các Partner Link Types: 38 5.3.4.Định nghĩa quy trình nghiệp vụ (Bussiness Process Definition) 39 Hình 5.4. Lược đồ tuần tự 40 5.4.Config engine và cài plug-in 40 5.4.1.Cài đặt Apache Tomcat: 41 Hình 5.5 Thiết lập biến môi trường 42 Hình 5.6 Start Tomcat 26 42 5.5.2.Cài đặt Axis2( phiên bản nâng cấp của Axis):có nhiều cách để cài đặt axis2,đơn giản nhất là chép tập tin axi2.war vào thư mục C:\apache-tomcat- 5.5.27\webapps và restart lại tomcat sẽ thành công.Truy câp:http://localhost:8080/axis2 sẽ được: 43 Hình 5.7.Khởi động Axis2 43 5.4.3.Cài đặt Eclipse WTP: 43 Hình 5.8 Thiết lập Axis2 trong eclipse 44 5.4.4 Cài đặt MySQL 4.1 và JDBC connector: 44 Hình 5.9. Lược đồ cơ sở dữ liệu 45 5.4.5.Cài đặt ODE Apache 45 5.5.Thực hiện: 45 5.5.1.Chương trình chính: 45 Hình 5.10. Giao diện thiết kế 46 Hình 5.11.WSDL của web service airline 46 Hình 5.12.Thiết kế partnerlink 47 Hình 5.13 config active <invoke> 48 Hình 5.14. BPEL proccess 49 Hình 5.15. active <if> 49 Hoàng Xuân Tuấn Đ05TH Trang 7 Báo cáo Thực tập Hình 5.16. config active <assign> 50 Hình 5.17. Config WSDL cho bpel proccess 51 Hình 5.18. config deploy.xml 52 5.5.2.Viết client gọi BPEL: 52 Hình 5.19.Mô hình bpel process tương tự 1 web service 53 Hình 5.20.Tạo web project client 54 MỤC LỤC HÌNH: Hình1.1 Mô hình CORBA……………………………………………………………9 Hình 1.2 Mô hình EJB …………………………………………………………….10 Hình 1.3 Mô hình DCOM ………………………………………………………… 11 Hình 1.4 Mô hình SOA sử dụng webservice…………………………………………13 Hình 2.1 Mô hình tuần tự…………………………………………………………….14 Hình 2.3.Mô hình đồng bộ hóa ……………………………………………… 15 Hình 2.2 song song …………………………………………………………14 Hình 2.4. Mô hình chọn loại trừ ……………………………………………… 15 Hình 2.5.Mô hình trộn đơn giản ……………………………………………… 15 Hình 2.6.Mô hình chọn đa nhánh ……………………………………………… 16 Hình 2.7.Mô hình trộn đồng bộ hóa ……….………………………………………17 Hình 2.8.Mô hình trộn đa nhánh ……………………………………………….17 Hình 2.9.Mô hình các vòng lặp tùy ý……………………………………………….17 Hình 3.1.Mô hình webservice đơn giản…………………………………………….18 Hình 3.2. Ứng dụng của webservice trong thực tế …………………………………19 Hoàng Xuân Tuấn Đ05TH Trang 8 Báo cáo Thực tập Hình 3.3.Mô tả wsdl ………………………………………………20 Hình 3.4.Mô hình của UDDI……………………………………………………….20 Hình 3.5.Cấu trúc SOAP ……………………………………………………… 21 Hình 4.1.Kiến trúc của bpel process ……………………………………………… 24 Hình 4.2. Các thành phần trong bpel process…………………………………… 26 Hình 5.1.Lược đồ hoạt dong……………………………………………………….36 Hình 5.2.Interface của web service airline webservice………………………… 37 Hình 5.3. Interface bpel process ………………………………………………….38 Hình 5.4. Lược đồ tuần tự ……………………………………………………… 40 Hình 5.5 Thiết lập biến môi trường ……………………………………………… 41 Hình 5.6 Start Tomcat 26 …………………………………………………………42 Hình 5.7.Khởi động Axis2………………………………………………………. 42 Hình 5.8 Thiết lập Axis2 trong eclipse………………………………………… 43 Hình 5.9. Lược đồ cơ sở dữ liệu ………………………………………………… 44 Hình 5.10. Giao diện thiết kế ………………………………………………… 45 Hình 5.11.WSDL của web service airline ……………………………………… 46 Hình 5.12.Thiết kế partnerlink ……………………………………………………46 Hình 5.13 config active <invoke> ……………………………………………….47 Hình 5.14. BPEL process 48 ……………………………………………… 48 Hình 5.15. active <if> ……………………………………………… 48 Hình 5.16. config active <assign> ………………………………………………. 49 Hình 5.17. Config WSDL cho bpel process …………………………………… 50 Hình 5.18. config deploy.xml ……………………………………………… 51 Hoàng Xuân Tuấn Đ05TH Trang 9 Báo cáo Thực tập Hình 5.19.Mô hình bpel process tương tự 1 web service ……………………… 52 Hình 5.20.Tạo web project client ……………………………………………… 53 CHƯƠNG I:HIỆN TRẠNG 1.1. Phân tích, đánh giá một số mô hình kiến trúc phân tán hiện tại Ba kiến trúc phân tán phổ biến nhất hiện này là CORBA, DCOM và EJB. Các kiến trúc này là sự mở rộng của các hệ thống hướng đối tượng bằng cách cho phép phân tán các đối tượng trên mạng. Đối tượng đó có thể có không gian địa chỉ bên ngoài ứng dụng, hoăc ở một máy khác với máy chứa ứng dụng trong khi vẫn được tham chiếu sử dụng như một phần của ứng dụng. • CORBA – Common Object Request Broker Architecture: ► CORBA được định nghĩa bởi Object Management Group (OMG), là một kiến trúc phân tán mở, độc lập nền tảng và độc lập ngôn ngữ. ► CORBA Component Model (CCM) là một cải tiến đáng kể nhằm định nghĩa các mô hình thành phần so với CORBA. Nó định nghĩa ra quy trình thiết kế, phát triển, đóng gói, triển khai và thực thi các thành phần phân tán. CCM định nghĩa khái niệm Ports cho các thành tố. Các port này được sử dụng để kết nối các thành phần có sẵn với nhau, tạo các hệ thống phân tán phức tạp hơn. Mỗi thành phần CCM có một đối tượng Home chịu trách nhiệm quản lý chu kỳ sống của đối tượng và được triển khai bên trong một trình chứa (container) ► Ưu điểm của CORBA là các lập trình viên có thể chọn bất kỳ ngôn ngữ, nền tảng phần cứng, giao thức mạng và công nghệ để phát triển mà vẫn thoả các tính chất của CORBA. Tuy nhiên CORBA số một nhược điểm là nó là ngôn ngữ lập trình cấp thấp, rất phức tạp, khó học và cần một đội ngũ phát triển có kinh nghiệm. Ngoài ra các đối tượng CORBA cũng khó có thể tái sử dụng. Hoàng Xuân Tuấn Đ05TH Trang 10 [...]... của webservice trong thực tế Hoàng Xuân Tuấn Đ05TH Trang 20 Báo cáo Thực tập 3.3.Các thành phần chính trong Webservice: 3.3.1.XML: XML là một ngôn ngữ mô tả văn bản với cấu trúc do người sử dụng định nghĩa Về hình thức XML có ký pháp tựa như HTML nhưng không tuân theo một đặc tả quy ước như HTML Do web service là sự kết hợp của nhiều thành phần khác nhau , do đó web services sử dụng các tính năng và... Discovery and Intergration: Để có thể sữ dụng các dịch vụ, trước tiên client phải tìm dịch vụ, ghi nhận thông tin về cách sử dụng dịch vụ và biết được đối tượng cung cấp dịch vụ UDDI định nghĩa một số thành phần cho biết trước các thông tin này để cho phép các client truy tìm và nhận lại những thông tin yêu cầu sử dụng web services Hoàng Xuân Tuấn Đ05TH Trang 21 Báo cáo Thực tập Hình 3.4.Mô hình của UDDI... registry .Web service được thực thi và được gọi bởi những người dùng muốn sử dụng dịch vụ 3.4.1.4 Giai đoạn quản lý: Giai đoạn cuối cùng là giai đoạn quản lý Nó bao trùm tất cả các nhiệm vụ quản lý và quản trị ứng dụng web service Chúng ta đã nắm được các bước cơ bản để thực hiện 1 dịch vụ web Ngoài ra còn có những phương pháp khác để tạo một dịch vụ khác mà điển hình là sử dụng ngôn ngữ BPEL4WS. .. Xuân Tuấn Đ05TH Trang 13 Báo cáo Thực tập Hình 1.4 Mô hình SOA sử dụng webservice CHƯƠNG II: WORKFLOW BPEL4WS là một ngôn ngữ chuẩn cho việc thực hiện các quy trình nghiệp vụ.Để tìm hiểu về các quy trình này chúng ta sẽ đi vào thế giới workflow Có 2 cách hiểu về workflow Cách 1: workflow theo nghĩa rộng, là 1 mô hình nghiệp vụ, trong đó các công việc được phân công rõ ràng, thực hiện theo thứ tự đặt... này Hoàng Xuân Tuấn Đ05TH Trang 19 Báo cáo Thực tập Hình 3.1.Mô hình webservice đơn giản 3.2.Đặc điểm của webservice: • Web service cho phép client và server tương tác được với nhau mặc dù trong những môi trường khác nhau • Web service thì có dạng mở và dựa vào các tiêu chuẩn.XML và HTTP là nền tảng kỹ thuật cho web service.Phần lớn kỹ thuật của web service được xây dựng là những... thực hiện khác là xây dựng 1 webservice dựa trên một webservice đã có sẵn 3.4.1.2.Giai đoạn triển khai Giai đoạn thứ hai là giai đoạn triển khai.Trong giai đoạn này chúng ta triển khai web service tới một application server Hoàng Xuân Tuấn Đ05TH Trang 23 Báo cáo Thực tập 3.4.1.3 Giai đoạn thực thi: Giai đoạn thứ ba là giai đoạn tiến hành Trong giai đoạn này chúng ta công bố (publish) web. .. • Web service thì rất linh động : với UDDI và WSDL, thì việc mô tả và phát triển web service có thể được tự động hóa • Web service được xây dựng trên nền tảng những công nghệ đã được chấp nhận • Web service có dạng mô đun • Web service có thể công bố (publish) Ví dụ về webservice như: Đặt vé máy bay trực tuyến,các dịch vụ thương mại,dự báo thời tiết… Hình 3.2 Ứng dụng của webservice... ngôn ngữ này ở chương kế tiếp Hoàng Xuân Tuấn Đ05TH Trang 24 Báo cáo Thực tập Tài liệu tham khảo CHƯƠNG 4: LÝ THUYẾT BPEL 2.0 Lịch sử của BPEL: The Business Process Execution Language for Webservice (BPEL4WS) được hình thành tháng 7 năm 2002 với phiên bản BPEL4WS 1.0 đó là sự hợp tác của IBM,Microsoft và BEA.Đó là sự kết hợp của IBM’s Web Services Flow Language (WSFL) and Microsoft’s XLANG Vào tháng... AND phân luồng (AND-Split) phải đều được thực hiện Các ví dụ: Mở rộng ví dụ trong mẫu 6 (chọn đa nhánh), sau khi một hoặc cả hai hành vi liên-hệ-phòng-chữa-cháy và liên-hệ-công-ty-bảo-hiểm đã hoàn tất (dựa trên việc nó có được thực thi hay không), hành vi trình -báo- cáo phải được thực hiện (chỉ duy nhất một hành vi) Mô hình: Hoàng Xuân Tuấn Đ05TH Trang 17 Báo cáo Thực tập A C B Hình 2.7.Mô hình trộn đồng... qủa này , các ứng dụng tích hợp vĩ mô tăng cường sử dụng XML.Nhờ có khả năng tổng hợp này mà XML đã trở thành kiến trúc nền tảng cho việc xây dựng web service 3.3.2.WSDL -Web Services Description Language : WSDL định nghĩa cách mô tả web service theo cú pháp tổng quát XML , bao gồm các thông tin - Tên service ̣ - Giao thức và kiểu mã hóa sẽ được sử dụng khi gọi các hàm của web service - Loại . THÀNH PHỐ HỒ CHÍ MINH BÁO CÁO TỐT NGHIỆP HỆ ĐẠI HỌC Ngành : Công Nghệ Thông Tin Hệ : Chính quy Niên khóa : 2005-2009 Đề tài : NGHIÊN CỨU WEB SERVICES COMPOSITION SỬ DỤNG BPEL4WS Mã số đề tài. hành. Hoàng Xuân Tuấn Đ05TH Trang 13 Báo cáo Thực tập Hình 1.4 Mô hình SOA sử dụng webservice CHƯƠNG II: WORKFLOW BPEL4WS là một ngôn ngữ chuẩn cho việc thực hiện các quy trình nghiệp vụ.Để tìm. ý……………………………………………….17 Hình 3.1.Mô hình webservice đơn giản…………………………………………….18 Hình 3.2. Ứng dụng của webservice trong thực tế …………………………………19 Hoàng Xuân Tuấn Đ05TH Trang 8 Báo cáo Thực tập Hình 3.3.Mô tả wsdl

Ngày đăng: 02/06/2015, 17:33

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w