web services kanda runapongsa ([email protected])[email protected] dept. of computer engineering...

22
Web Services Kanda Runapongsa ([email protected] ) Dept. of Computer Engineering Khon Kaen University

Upload: rudolf-perry

Post on 30-Dec-2015

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

Web Services

Kanda Runapongsa ([email protected])

Dept. of Computer EngineeringKhon Kaen University

Page 2: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

2

What are Web Services? Web services are loosely coupled

software components delivered over Internet standard technologies

Facilitate delivering business applications as a service accessible to anyone, anytime, at any location, and using any platform

Page 3: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

3

Web Services Characteristics

Based on XML messaging Data exchanged between the Web

service provider and the user are defined in XML

Web services provide a cross-platform integration of business applications over the Internet

Page 4: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

4

Web Services Characteristics

To build Web services, developers can use any common programming language, such as Java, C, C++, Perl, Python, C#, and /or Visual Basic

Web services can be used by many types of clients on various types of devices, such as Wireless device, PDA, Desktop, Automobile

Page 5: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

5

Web Services Characteristics

Web services vary in functionality from a simple request to a complex business transaction involving multiple resources

All platforms including J2EE, CORBA, and Microsoft .NET provide extensive support for creating and deploying Web services

Page 6: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

6

Web Services Characteristics

Web services use industry-standard protocols like HTTP, and they can be easily accessible through corporate firewalls

Web services are dynamically located and invoked from public and private registries based on industry standards such as UDDI and ebXML

Page 7: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

7

Web Applications vs. Web

Services Traditionally, Web applications

enable interaction between an end user and a Web site

Web Services are service-oriented and enable application-to-application communication over the Internet and easy accessibility to heterogeneous applications and devices

Page 8: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

8

Why Use Web Services? Can be invoked through XML-based RPC

mechanisms across firewalls Provide a cross-platform, cross-language

solution based on XML messaging Facilitate ease of application integration

using a light-weight infrastructure without affecting scalability

Enable interoperability among heterogeneous applications

Page 9: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

9

Operational Model of Web

Services

Discover Service

Service Broker

Service Requestor

Service Provider

Register Service

Invoke Service

Page 10: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

10

Operational Model of Web Services

Service provider Developing and deploying the Web

services Define the services and publishes them

with the service broker Service broker (service registry)

List various service types, descriptions, and locations of the services that help the service requesters find and subscribe to the required services

Page 11: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

11

Operational Model of Web Services

Service requestor Locate the Web service using the

service broker Invoke the required services Execute the services from the

service provider

Page 12: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

12

Web Services Communication Models

In Web services architecture, the communication models can be RPC-based synchronous Messaging-based synchronous/asynchronous

Page 13: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

13

RPC-Based Communication Model

Define a request/response-based synchronous communication

When the client sends a request, the client waits until a response is sent back from the server before continuing any operation

ServiceRequester

ServiceProvider

REQUEST

RESPONSE

Page 14: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

14

RPC-Based Communication Model

Clients invoke the Web services by sending parameter values to the Web service provider

The Web service provider executes the required method and sends back the return values

Page 15: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

15

Messaging-based Communication

Model Define a loosely coupled and

document-driven communication The service requestor does not

wait for a response

ServiceRequester

ServiceProvider

MESSAGE

Page 16: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

16

Messaging-based Communication Model

The client sends an entire document rather than sending a set of parameters

The service provider receives the document, processes it, and then may or may not return a message

With a synchronous model, the client can request a service, then wait, and receive the document from the service provider

Page 17: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

17

Implementing Web Services

1. The service provider Creates the Web service typically

as SOAP-based service interfaces Deploys the service and make

them available for invocation over a network

Describes the Web service as a WSDL-based service description

Page 18: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

18

Implementing Web Services

2. The service provider Registers the WSDL-based service

description with a service broker, which is typically a UDDI registry

3. The UDDI registry Stores the service description as

binding templates and URLs to WSDLs located in the service provider environment

Page 19: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

19

Implementing Web Services

4. The service requestor Locates the required services by

querying the UDDI registry Obtains the binding information and the

URLs to identify the service provider 5. The service requestor

Invokes the service provider Retrieves the WSDL Service description

for those registered services

Page 20: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

20

Implementing Web Services

6. The service requestor Communicate with the service

provider Exchange data or messages by

invoking the available services in the service container

Page 21: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

21

Implementing Web Services

Service Broker

Service Requestor

Service Provider

1. Create Web Service and WSDL

2. Register/Publish Services

3. Store service description

4. Locate services and its binding info

5. Invoke & obtain WSDL

6. Exchange datausing SOAP RPC/Messaging

Page 22: Web Services Kanda Runapongsa (krunapon@kku.ac.th)krunapon@kku.ac.th Dept. of Computer Engineering Khon Kaen University

168493: XML and Web Services (II/2546)

22

Building Web Services in the J2EE Environment

Sun released its Java API for Web Services for the developer community as the Java Web Services Developer Pack (JWSDP) It provides a full-fledged solution package

for developing and testing Web services using the Java APIs, such as JAXM, JAXP, JAXR, JAXB, JAX-RPC, Java WSDP Register Server, and JSTL

Apache released Apache Axis as a tool for creating and testing Web services