xml web services

18
XML Web Services Hangning Qiu For CS843

Upload: gunnar

Post on 05-Jan-2016

24 views

Category:

Documents


1 download

DESCRIPTION

XML Web Services. Hangning Qiu For CS843. What is XML Web service?. A Web service is a service program that relies on the Web programming model and XML technologies -- It uses a Web programming model in applications that are not browser-based. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: XML Web Services

XML Web Services

Hangning Qiu

For CS843

Page 2: XML Web Services

What is XML Web service?

A Web service is a service program that relies on the Web programming model and XML technologies --

It uses a Web programming model in applications that are not browser-based.

It uses XML/XSD for messaging and for achieving interoperability.

Page 3: XML Web Services

Categories of Web Services

SOAP and other W3C standards based XML Web services

Non-SOAP standards based XML Web Services

Non-standards based XML Web services

Page 4: XML Web Services

Non-Standards Based XML Web Services

There are many such. An example is: http://www.wichita.gov/services/

Page 5: XML Web Services

Non-SOAP standards based XML Web Services

A perfect example is RSS (Rich Site Summary), originated – 1997, RSS 1.0 - December 2000, widely used for exchanging news reports and other types of human-readable messages.

A consumer example is at http://www.studioxp.com/qiu/xmlnews/

Page 6: XML Web Services

Standard XML Web Services

XML (essential) – Messaging format SOAP (essential) - Communication WSDL (optional) - Description UDDI (optional) - Discovery Loose coupling - essential feature for

achieving unprecedented interoperability

Page 7: XML Web Services

SOAP

Simple Object Access Protocol 1.1: “SOAP is a lightweight protocol for exchange of information in a decentralized, distributed environment. It is an XML based protocol that consists of three parts: an envelope that defines a framework for describing what is in a message and how to process it, a set of encoding rules for expressing instances of application-defined data types, and a convention for representing remote procedure calls and responses.” (W3C, May 2000)

Page 8: XML Web Services

SOAP (continued) HTTP/1.1 200 OK Content-Type: text/xml; charset="utf-8" Content-Length: nnnn

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"

SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>

<SOAP-ENV:Body> <m:GetLastTradePriceResponse xmlns:m="Some-URI"> <Price>34.5</Price> </m:GetLastTradePriceResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Page 9: XML Web Services

SOAP (continued)

SOAP messaging pattern:• Sender (messages/mapping) Receiver

• Request (SOAP messages) Response

• Remote method invocations and SOAP messages are mapped to each other – this should be done with Web services tools, and be transparent to application developers!

Page 10: XML Web Services

WSDL Web Service Description Language 1.1: “WSDL is an

XML format for describing network services as a set of endpoints operating on messages containing either document-oriented or procedure-oriented information. The operations and messages are described abstractly, and then bound to a concrete network protocol and message format to define an endpoint. Related concrete endpoints are combined into abstract endpoints (services). WSDL is extensible to allow description of endpoints and their messages regardless of what message formats or network protocols are used to communicate...” (W3C, March 2001)

Page 11: XML Web Services

WSDL (continued)

http://www.w3.org/TR/wsdl.html WSDL is complementary to SOAP (but

does not require SOAP). It is designed to describe types, bindings and other relevant information of Web services.

Language and platform independent. Should be transparent to application

developers!

Page 12: XML Web Services

UDDI

Universal Description, Discovery and Integration: it defines a a SOAP-based XML Web service whose sole purpose is to categorize and locate WSDL-based descriptions of Web services.

It is a “meta service”. http://uddi.org/specification.html

Page 13: XML Web Services

Brief Comparison

DCOM CORBA Java RMI Web Services

Messaging Protocol

RPC IIOP IIOP or proprietary

HTTP (or SMTP, etc) + SOAP

Message format

NDR CDR Java server XML

Service description

IDL OMG IDL Java WSDL

Service discovery

Windows registry

Naming service

RMI registry UDDI

Page 14: XML Web Services

Global XML Web Services Architecture

http://www.gotdotnet.com/team/XMLwebservices/gxa_overview.aspx

This initiative aims to provide additional capabilities to baseline XML Web services in the areas including: security, message routing, reliable messaging, and transactions.

Page 15: XML Web Services

Case Study: An XML Web Service Solution

This is a case study that tries to provide an XML Web service solution to the voting system in our program assignments.

Page 16: XML Web Services

The Future of XML Web Services

More work will be done in three major areas:• Web service infrastructures will be built - as

addressed with the GXA initiative.

• SOAP, WSDL and related standards will further evolve.

• Vender support in form of toolkits and frameworks will improve.

Page 17: XML Web Services

Limitations

Not appropriate for building time sensitive, life critical, tightly coupled, non-distributed systems

Page 18: XML Web Services

Conclusions

A simple, loosely coupled, messaging framework upon which developers can build sophisticated distributed business solutions.

Has a bright future.