Thành phần dịch vụ “So Sánh Giá” (Với Amazon.com)

Một phần của tài liệu đồ án tìm hiểu và xây dựng ứng dụng kiến trúc hướng dịch vụ với oracle soa suite (Trang 98 - 106)

Sử dụng quy trình BPEL truy xuất vào 2 web service (AmazonSearchService và VinabookSearchService). Gán các giá trị đầu vào (loại sản phẩm, tên sản phẩm) để lấy về kết quả so sánh giá sản phẩm của 2 trang web.

Hình 5-5: Thành phần tổng hợp dịch vụ “So sánh giá”

o Tên thành phần dịch vụ : SoSanhGia

o Exposed Service : sosanhgiabpelprocess_client_ep (WebService)

o Components : SoSanhGiaBPELProcess (BPEL)

o External References : AmazonSearchService (WebService) và VinabookSearchService (WebService)

5.3.1. Tổng quan quy trình nghiệp vụ BPEL

84

85

5.3.2. Các thành phần tham chiếu 5.3.2.1.

o Partner Link : sosanhgiabpelprocess_client

o WSDL URL : SoSanhGiaBPELProcess.wsdl

o Partner Link Type : SoSanhGiaBPELProcess

o Partner Role : (not specified)

o My Role : SoSanhGiaBPELProcessProvider

5.3.2.2.

o Partner Link : VinabookSearchService

o WSDL URL : LaySPTheoLoaiVaTenSPServiceWrapper.wsdl

o Partner Link Type : VinabookSearchService

o Partner Role : laysptheoloaivatenspExecute_ptt

o My Role : (not specified)

5.3.2.3.

o Partner Link : AmazonSearchService

o WSDL URL : AmazonSearchServiceWrapper.wsdl

o Partner Link Type : AmazonSearchService

o Partner Role : Service1Soap

86

5.3.3. Các hành động

STT Hành động Cài đặt

1 receiveInput - Partner link : sosanhgiabpelprocess_client - Operation : process

- Variable : inputVariable (adsbygoogle = window.adsbygoogle || []).push({});

- Ý nghĩa: nhận giá trị đầu vào

2 Assign Ý nghĩa : Gán giá trị đầu vào (inputVariable) cho biến (Invoke1_laysptheoloaivatenspExecute_InputVariable) và (Invoke2_GetProductPriceByName_InputVariable)

3 Invoke - Partner link : VinabookSearchService - Operation : laysptheoloaivatenspExecute - Variable : o Input : Invoke1_laysptheoloaivatenspExecute_InputVariab le o Output: Invoke1_laysptheoloaivatenspExecute_OutputVaria ble

87

- Ý nghĩa: gọi đến web service (VinabookSearchService) đề thực hiện hành động truyền giá trị đầu vào (Input) để lấy về “sản phẩm” (Output).

4 Invoke - Partner link : AmazonSearchService - Operation : GetProductPriceByName - Variable : o Input : Invoke2_GetProductPriceByName_InputVariable o Output: Invoke2_GetProductPriceByName_OutputVariable

88

- Ý nghĩa: gọi đến web service (AmazonSearchService) đề thực hiện hành động truyền giá trị đầu vào (Input) để lấy về “sản phẩm” (Output).

5 Switch - Ý nghĩa : Quyết định nhánh theo điều kiện

- Điều kiện : Kiểm tra giá của “sản phẩm” trên Amazon.com có >= giá trên Vinabook hay không?

5.1 Nếu giá của “sản phẩm” trên Amazon.com >= giá trên Vinabook 5.1.1 Switch - Ý nghĩa : Quyết định nhánh theo điều kiện

- Điều kiện : Kiểm tra giá của “sản phẩm” trên Amazon.com có > giá trên Vinabook hay không?

5.1.1.1 Nếu giá của “sản phẩm” trên Amazon.com > giá trên Vinabook Transform - Variable :

Invoke2_GetProductPriceByName_OutputVariable và Invoke1_laysptheoloaivatenspExecute_InputVariable - Target Variable : outputVariable

- Mapper File : xsl/Transformation_1.xsl

- Ý nghĩa : chuyển đổi dữ liệu từ giá trị đầu vào (Variable) đến giá trị đích (Target Variable)

5.1.1.2 Nếu giá của “sản phẩm” trên Amazon.com = giá trên Vinabook Transform - Variable :

89

Invoke1_laysptheoloaivatenspExecute_InputVariable - Target Variable : outputVariable

- Mapper File : xsl/Transformation_2.xsl

- Ý nghĩa : chuyển đổi dữ liệu từ giá trị đầu vào (Variable) đến giá trị đích (Target Variable)

5.2 Nếu giá của “sản phẩm” trên Amazon.com < giá trên Vinabook 5.2.1 Transform - Variable :

Invoke2_GetProductPriceByName_OutputVariable và Invoke1_laysptheoloaivatenspExecute_InputVariable - Target Variable : outputVariable

- Mapper File : xsl/Transformation_3.xsl

- Ý nghĩa : chuyển đổi dữ liệu từ giá trị đầu vào (Variable) đến giá trị đích (Target Variable)

6 replyOutput - Partner link : sosanhgiabpelprocess_client - Operation : process

- Variable : outputVariable

- Ý nghĩa: xuất giá trị kết quả

90

Trong chương này chúng ta đã có cái nhìn tổng quát về cách tổng hợp các thành phần dịch vụ trong kiến trúc hướng dịch vụ và hiểu rõ các tính năng của phần mềm Oracle JDeveloper Studio để tổng hợp, lắp ráp các thành phần lại với nhau . (adsbygoogle = window.adsbygoogle || []).push({});

Bước tiếp theo của pha tổng hợp là pha triển khai và quản lý. Để thực hiện pha này chúng ta cần sự hỗ trợ của phần mềm Oracle WebLogic để quản lý ứng dụng trong môi trường thực tế. Chương 6 sẽ trình bày rõ vấn đề nàỵ

91

Chương 6

TRIỂN KHAI VÀ QUẢN LÝ ỨNG DỤNG VINABOOK

Sau giai đoạn tổng hợp lắp ráp vào ứng dụng. Bước kế tiếp là triển khai ứng dụng vào môi trường thực thi . Trong chương này trình bày 2 phần:

Triển khai ứng dụng sử dụng phần mềm Oracle JDeveloper.

Khảo sát ứng dụng dưới các vai trò:

o Guest

o Member (Thành viên)

o Quản trị (Admin)

Quản lý ứng dụng với Oracle WebLogic Enterprise Manager

Nội dung của chương 6 trình bày tập trung chủ yếu vào việc triển khai ứng dụng vào môi trường thực thi và quản lý nó ở mức tổng quan nhất có thể. Phần khảo sát ứng dụng chỉ chỉ trình bày một phần nhỏ của ứng dụng. Nội dung chi tiết xin được trình bày trong phần Phụ lục D.

Tính năng nổi bật của ứng dụng là Thanh toán bằng PaypalSo Sánh Giá vớiCác BookStore khác trên mạng. Sự so sánh giá này mang lại tiện ích to lớn cho khách hàng , giúp cho khách hàng có cơ hội mua sách với giá rẻ. Thông tin Sách lấy thông qua dịch vụ hỗ trợ của Amazon trên website : www.amazon.com

Một phần của tài liệu đồ án tìm hiểu và xây dựng ứng dụng kiến trúc hướng dịch vụ với oracle soa suite (Trang 98 - 106)