.2 1 Kết quả web service

Một phần của tài liệu Giáo trình lập trình Web với Servlet và JSP - Đặng Thanh Dũng (Trang 112 - 115)

Ở dưới cùng của cửa sổ Eclipse, ta có thể thấy cả hai request đưa vào web service và các response từ service được hiển thị trong giao thức TCP/IP Monitor. Eclipse sẽ hiển thị các thông báo trên cùng một dòng: <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <helloName xmlns="http://t320.open.ac.uk"> <name>Nick</name> </helloName> </soapenv:Body> </soapenv:Envelope>

Có thể thấy SOAP Envelop có phần body đơn giản. Không gian riêng của ứng dụng được xây dựng bằng Java package của class Java. Nếu tên duy nhất của Java package đã được dùng thì đây được xem là một URI.

Phương thức Java tên là ‘helloName’ được sử dụng như một tag SOAP đóng trong tag “name”, là tên của tham số giá trị trong phương thức ‘helloName’.

SOAP response rất đơn giản, chỉ có một chút thay đổi trong

body: <?xml version="1.0" encoding="utf-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <helloNameResponse xmlns="http://t320.open.ac.uk">

<helloNameReturn>Hello there Nick</helloNameReturn> </helloNameResponse>

Chương 11

SERVICE-ORIENTED ARCHITECTURE

11.1. SOA LÀ GÌ?

Kiến trúc hướng dịch vụ SOA (Service-Oriented Architecture) là sự cải tiến của tính toán phân tán dựa trên cơ chế thiết kế request/response cho các ứng dụng đồng bộ và không đồng bộ. Logic kinh doanh của một ứng dụng hay các chức năng riêng lẻ được module hóa như là các dịch vụ cho người dùng/khách hàng. Các nhà phát triển ứng dụng cũng như các nhà tích hợp hệ thống có thể xây dựng ứng dụng bằng cách đưa ra một hoặc nhiều dịch vụ cho dù họ không biết cách cài đặt các dịch vụ này. Chẳng hạn, một dịch vụ có thể được cài đặt bằng công nghệ .Net hoặc J2EE trong khi ứng dụng sử dụng các dịch vụ này có thể được xây dựng trên một platform hoặc một ngôn ngữ khác.

SOA có một số đặc trưng chính sau:

 Dịch vụ SOA có các interface self-describing trong các tập tin XML độc lập với platform.

 Dịch vụ SOA giao tiếp với các message được định nghĩa một cách hình thức thông qua XML Schema (còn gọi là XSD). Giao tiếp giữa người dùng với nhà cung cấp hoặc với các dịch vụ xảy ra trong một môi trường đặc biệt, khi mà họ không biết hoặc biết rất ít về nhà cung cấp. Message giữa các dịch vụ có thể được xem như là tài liệu kinh doanh chủ chốt trong một doanh nghiệp.

 Các dịch vụ SOA được duy trì trong một doanh nghiệp bằng một bản ghi (hoặc bản đăng ký). Bản ghi này hoạt động như một bản liệt kê các hồ sơ trong việc quản lý giấy tờ. Ứng dụng có thể tìm kiếm các dịch vụ trong bản đăng ký (registry) và gọi dịch vụ đó.

 Mỗi dịch vụ SOA có một Chất lượng dịch vụ (QoS) liên kết với nó. Một số điểm chính của QoS là yêu cầu bảo mật, chẳng hạn như xác thực và ủy quyền, các tin nhắn đáng tin cậy, và các luật lệ liên quan đến người có thể gọi dịch vụ.

11.2. TẠI SAO LẠI DÙNG SOA

Một thực tế trong ngành công nghiệp IT là cơ sở hạ tầng không đồng nhất giữa các hệ điều hành, các ứng dụng, phần mềm hệ thống và

cơ sở hạ tầng ứng dụng. Một số ứng dụng đã có được sử dụng để chạy các quy trình kinh doanh hiện tại, vì vậy việc bắt đầu xây dựng một cơ sở hạ tầng mới không phải là lựa chọn hay. Các doanh nghiệp cần nhanh chóng đáp ứng với những thay đổi trong kinh doanh một cách nhanh nhạy; đầu tư vào các ứng dụng và cơ sở hạ tầng ứng dụng để giải quyết các yêu cầu kinh doanh mới hiện có; hỗ trợ các kênh mới tương tác với khách hàng, đối tác và nhà cung cấp; đồng thời đưa ra kiến trúc hỗ trợ các doanh nghiệp. SOA với đặc trưng linh hoạt của nó cho phép doanh nghiệp dễ dàng gắn các dịch vụ mới vào hoặc nâng cấp các dịch vụ hiện có theo kịp thời đại nhằm giải quyết các yêu cầu kinh doanh mới, cung cấp các tùy chọn dịch vụ qua các kênh khác nhau, từ đó có thể bảo vệ các khoản đầu tư cơ sở hạ tầng công nghệ thông tin hiện có. Trong ví dụ dưới đây, một doanh nghiệp sử dụng SOA có thể tạo ra một chuỗi cung cấp ứng dụng tổng hợp sử dụng một tập các ứng dụng hiện tại thể hiện các chức năng thông qua các giao diện chuẩn.

Một phần của tài liệu Giáo trình lập trình Web với Servlet và JSP - Đặng Thanh Dũng (Trang 112 - 115)