Web Services - PowerPoint PPT Presentation

1 / 40
About This Presentation
Title:

Web Services

Description:

Remote Procedure Call (RPC)-oriented ... UDDI (Universal Description, Discovery, and Integration) ... 5. The developer codes the calls to the client proxy ... – PowerPoint PPT presentation

Number of Views:224
Avg rating:3.0/5.0
Slides: 41
Provided by: sagg1
Category:

less

Transcript and Presenter's Notes

Title: Web Services


1
Web Services
2
Agenda
  • Introduction
  • Technology Overview
  • Example Scenario
  • Summary
  • QA

3
Introduction
4
Questions
  • What is a web service?
  • Why should I use web services?
  • How can I use web services?

5
Web Services - from different perspectives
  • From a business perspective web services is all
    about integration, integrating application
    functionality within an organization or
    integrating application between business
    partners.
  • From a technical perspective a web service is a
    collection of one or more related operations that
    are accessible over a network and are described
    by a service description.

6
What is a Web Service
  • A definition
  • A Web service is a business process or step
    within a business process that is made available
    over a network to internal and/or external
    business partners to achieve some business goal

7
Web Services
Protocol
8
Web Services - What everyone wants
  • An easy way to integrate trading partners
  • A flexible solution that works in a multi-vendor
    environment
  • Easier ways of describing and exchanging
    information
  • The ability to operate in multiple verticals and
    to support emerging standards

9
Technology Overview
10
Major types of Web Services
  • Remote Procedure Call (RPC)-oriented
  • Sends data formatted as arguments to a procedure
    or object invocation
  • Like CORBA, COM, or EJB
  • Returns a result directly (synchronous)
  • Document-oriented
  • Sends data formatted as a business document such
    as a purchase order
  • Like MQ Series, MSMQ or JMS
  • Typically initiates a process flow (asynchronous)

11
RPC-Oriented Web Service
Web Service Interface
Request
Response
12
Document-Oriented Web Service
Web Service Interface
Bulk Order
Database
Email acknowledgment
Step 2
Step 3
Invoice
Step 4
Business Process Flow
13
Service Oriented Architecture
14
Service Oriented Architecture
  • Roles
  • Service Requestor - use service brokers to
    discover Web services, then invoke those services
    to create applications.
  • Service Provider - provides services and maintain
    a registry that makes those services available.
  • Service Broker - matches service providers with
    service requestors.
  • Operations
  • Publish - involves advertising services to a
    registry (publishing) or removing those entries
    (un-publishing). The service provider contacts
    the service broker to publish or un-publish a
    service.
  • Find - is performed by service requestors and
    service brokers together. The service requestors
    describe the kinds of services they're looking
    for, and the service brokers deliver the results
    that best match the request.
  • Bind - takes place between the service requestor
    and the service provider. The two parties
    negotiate as appropriate so the requestor can
    access and invoke services of the provider.

15
Web Services Technologies
  • XML (eXtensible Markup Language)
  • The root technology for web services, provides a
    common language.
  • Version 1.0
  • SOAP (Simple Object Access Protocol)
  • The XML based communication protocol
  • Version 1.2 (latest working draft July 2002)
  • WSDL ( Web Services Description Language)
  • The web service description API
  • Version 1.2 (latest working draft July 2002)
  • UDDI (Universal Description, Discovery, and
    Integration)
  • The publishing and discovery API for Web Services
  • Version 2 implemented today by IBM, Microsoft
    and Software AG

16
SOAP
  • A lightweight, flexible XML protocol for
  • Whole document exchange
  • RPC-style interaction
  • SOAP is usually http based
  • SOAP is completely extensible (transactions,
    security, asynchronous messaging, etc.)
  • SOAP can be mapped to other transports

17
SOAP Details
Unit of communication
Envelope
Attributes or qualities of the communication
Header
Block Block
Body
Message itself Procedure call parameters or
document
Block Block
18
WSDL
  • A specific type of XML schema for Web Services
  • Roughly equal to IDL
  • Defines
  • Data Types
  • Data exchanged (messages)
  • Operations
  • Mapping to protocols (http, MIME)
  • Services

19
WSDL
  • Defines services as collections of endpoints or
    ports
  • Defines the abstract interfaces of services, and
    the bindings available to access those services
  • combines notions of what a service is, and how to
    get to it
  • Handles both document-oriented and
    method-oriented services
  • Stored in repository or registry

20
WSDL Details - Abstract
PortTypes
21
WSDL Details - Concrete
Service
Port
Port
Port
22
UDDI
  • White pages
  • address, contact information, business names
  • Yellow pages
  • categorize the business
  • Green pages
  • technical info about exposed services, especially
    service definitions

23
UDDI
  • Repository of business data for the Web
  • SOAP APIs for inquiries and publishing
  • Contains search and contact information for
    businesses
  • Includes references to WSDLs and other Web
    service descriptions
  • Work in progress

24
UDDI Details
Businesses populate the registry with
descriptions of the services they support
1.
UDDI Business Registry
25
Basic Model
26
Emerging Web Services Technologies
  • Security
  • XML Signature and XML Encryption
  • SAML (Security Assertion Markup Language) used
    for authentication, authorization and SSO (single
    sign-on)
  • WS-Security framework for SOAP security
    interchange
  • XKMS (XML Key Management Services) - to be used
    with PKI
  • Transactions
  • BTP (Business Transaction Protocol)
  • Service Level
  • WSEL (Web Service Endpoint Language)
  • Business Process/Workflow
  • XLANG
  • WSFL (Web Services Flow Language)

27
Web Services Advantages
  • Relies on ubiquitous web infrastructure
  • Everyone is connected to the Net
  • Uses commodity software
  • High levels of abstraction
  • Maps to any existing technology or platform
  • Service-oriented architecture
  • Broad industry support
  • IBM, Microsoft, Software AG, Sun, Bea,

28
Example Scenario
29
Scenario
ABC Company
30
Scenario
  • ABC Company is a supplier of components.
  • ABC Company would like to expose one of it
    business processes to its partners, specifically
    they would like to allow their business partners
    to check their inventory before placing an order.
  • ABC Company decides to deploy a Java component to
    it application server and then expose it as web
    service.

31
Steps
  • Building a Web Service
  • Accessing a Web Service
  • Using a Web Service

32
Building Web Services
33
Building Web Services
  • 1. A Web service provider builds an artifact
    (e.g. a Java bean) that contains the business
    logic and code to access the required back-end
    systems.
  • 2. The bean representing the Web service is
    packaged as a archive file for deployment to the
    Application Server.
  • 3. The archive file is deployed to the
    application server so the SOAP server servlet can
    find the class and the methods in response to
    incoming SOAP messages requesting this service.
  • 4. Once the artifact has been developed that
    represents the logic of the Web service, the
    developer can create a WSDL description of the
    service.
  • 5. The description of the Web service is then
    published to the UDDI registry so others can find
    this service.

34
Accessing Web Services
35
Accessing Web Services
  • 1. The application developer begins working on a
    new application.
  • 2. The developer can search a UDDI registry for
    an existing Web service that could be used in the
    Web application.
  • 3. The developer locates the required Web service
    and downloads a WSDL describing how to bind and
    interact with the Web service.
  • 4. The developer generates a client proxy from
    the WSDL.
  • 5. The developer codes the calls to the client
    proxy methods in the application.

36
Using a Web Service
37
Using a Web Services
  • 1. The service requestors application uses the
    proxy client to request information.
  • 2. The client proxy will serialize the method to
    be invoked on the remote server and the method's
    parameters. Then it will post an HTTP request
    with the SOAP message. When the HTTP request
    arrives at the application server of the service
    provider, the application server forwards it to
    the SOAP servlet.
  • 3. The SOAP servlet de-serializes the method and
    its parameters, instantiates the artifact, and
    invokes on it the Web service method that
    contains the Web service functionality.
  • 4. The back-end access to a legacy system occurs.
  • 5. The results are returned.
  • 6. The SOAP servlet returns the results to the
    service requesters client proxy. The proxy
    client de-serializes the results from the SOAP
    message.
  • 7. The client proxy returns the results to the
    service requestor's application.

38
Summary
  • Web services expose existing business processes
    or steps.
  • Web services take advantage of the ubiquitous web
    infrastructure.
  • Web services are based on open standard backed by
    major players in various industries.

39
Resources
  • http//www.w3.org/XML/
  • http//www.w3.org/2002/ws/
  • http//www.w3.org/TR/SOAP/
  • http//www.w3.org/TR/wsdl
  • http//www.oasis-open.org/
  • http//www.uddi.org/
  • http//www.ws-i.org/
  • http//www.xmethods.org/

40
Questions Answers
Write a Comment
User Comments (0)
About PowerShow.com