Web Services: Concepts, Protocols and development Prepared By: Mehta Ishani
Outline • What is a web service? • Why web service? • Web Services Model • Web Services Stack • What is UDDI? • What is WSDL? • What is SOAP?
What is a web service? • Application components accessible over internet • Once deployed, can be used by other applications • XML is the basis for Web services
Standard definitions • IBM ▫ “A Web service is an interface that describes a collection of operations that are network accessible through standardized XML messaging” • Microsoft: XML Web Services ▫ “.. provide a way to describe their interfaces in enough detail to allow a user to build a client application to talk to them”
History • Structured programming • Object-oriented programming • Service oriented programming Hewlett-Packard's e-Speak in 1999 was an enabler for e-services. Microsoft introduced the name "web services" in June 2000
Why web services? • Application and data integration (provides interoperability) • Versatility (Any platform, Any Language) • Code re-use (provides flexibility) • Cost savings (Open Standards)
How does it work? The basic Web services platform is XML + HTTP. • SOAP (Simple Object Access Protocol) • UDDI (Universal Description, Discovery and Integration) • WSDL (Web Services Description Language)
Web services model Registry (UDDI) Service Requestor Service Provider Find Publish Bind (SOAP) (SOAP) (WSDL)
Web services stack
What is UDDI? • Universal Description, Discovery and Integration • UDDI is a directory service where businesses can register and search for Web services. • Sponsored by OASIS • Uses W3C and IETF Internet standards such as XML, HTTP, and DNS protocols.
What is UDDI? • UDDI registry • Search for Web service to obtain WSDL • For ex. Travel agency can use air line reservation interface • UDDI Community
What is WSDL? • Web Services Description Language • XML-based language for describing Web services and how to access them. • WSDL is maintained by the W3C.
Major elements • Port type - describes the operations performed • Port - specifies an address for a binding • Message – describes name and format of message • Types - defines the data types • Binding - defines the communication protocols • Service - specifies the address URL
What is SOAP? • Simple Object Access Protocol • SOAP is a simple XML-based protocol that allows applications to exchange information over HTTP. • SOAP will be developed as a W3C standard
Why SOAP? • RPC does not support HTTP • compatibility and security problem, firewalls and proxy servers issues • HTTP is supported by all Internet browsers and servers.
Major elements • Envelope –encloses the message itself. • Header (optional) – contains information relevant to the message • Body – includes the message payload. • Fault (optional) – carries information about a client or server error within a SOAP message.
namespace • default namespace for the SOAP envelope: http://www.w3.org/2001/12/soap-envelope • default namespace for SOAP encoding and data types is: http://www.w3.org/2001/12/soap-encoding
SOAP HTTP Binding • HTTP + XML = SOAP • A SOAP request could be an HTTP POST or an HTTP GET request. • Contains two headers • Content-Type - defines the MIME type • Content-Length - number of bytes in the body
Web services concepts, protocols and development

Web services concepts, protocols and development

  • 1.
    Web Services: Concepts, Protocolsand development Prepared By: Mehta Ishani
  • 2.
    Outline • What isa web service? • Why web service? • Web Services Model • Web Services Stack • What is UDDI? • What is WSDL? • What is SOAP?
  • 3.
    What is aweb service? • Application components accessible over internet • Once deployed, can be used by other applications • XML is the basis for Web services
  • 4.
    Standard definitions • IBM ▫“A Web service is an interface that describes a collection of operations that are network accessible through standardized XML messaging” • Microsoft: XML Web Services ▫ “.. provide a way to describe their interfaces in enough detail to allow a user to build a client application to talk to them”
  • 5.
    History • Structured programming •Object-oriented programming • Service oriented programming Hewlett-Packard's e-Speak in 1999 was an enabler for e-services. Microsoft introduced the name "web services" in June 2000
  • 6.
    Why web services? •Application and data integration (provides interoperability) • Versatility (Any platform, Any Language) • Code re-use (provides flexibility) • Cost savings (Open Standards)
  • 7.
    How does itwork? The basic Web services platform is XML + HTTP. • SOAP (Simple Object Access Protocol) • UDDI (Universal Description, Discovery and Integration) • WSDL (Web Services Description Language)
  • 8.
  • 9.
  • 10.
    What is UDDI? •Universal Description, Discovery and Integration • UDDI is a directory service where businesses can register and search for Web services. • Sponsored by OASIS • Uses W3C and IETF Internet standards such as XML, HTTP, and DNS protocols.
  • 11.
    What is UDDI? •UDDI registry • Search for Web service to obtain WSDL • For ex. Travel agency can use air line reservation interface • UDDI Community
  • 12.
    What is WSDL? •Web Services Description Language • XML-based language for describing Web services and how to access them. • WSDL is maintained by the W3C.
  • 13.
    Major elements • Porttype - describes the operations performed • Port - specifies an address for a binding • Message – describes name and format of message • Types - defines the data types • Binding - defines the communication protocols • Service - specifies the address URL
  • 14.
    What is SOAP? •Simple Object Access Protocol • SOAP is a simple XML-based protocol that allows applications to exchange information over HTTP. • SOAP will be developed as a W3C standard
  • 15.
    Why SOAP? • RPCdoes not support HTTP • compatibility and security problem, firewalls and proxy servers issues • HTTP is supported by all Internet browsers and servers.
  • 16.
    Major elements • Envelope–encloses the message itself. • Header (optional) – contains information relevant to the message • Body – includes the message payload. • Fault (optional) – carries information about a client or server error within a SOAP message.
  • 17.
    namespace • default namespacefor the SOAP envelope: http://www.w3.org/2001/12/soap-envelope • default namespace for SOAP encoding and data types is: http://www.w3.org/2001/12/soap-encoding
  • 18.
    SOAP HTTP Binding •HTTP + XML = SOAP • A SOAP request could be an HTTP POST or an HTTP GET request. • Contains two headers • Content-Type - defines the MIME type • Content-Length - number of bytes in the body