You are on page 1of 9

IBM Software Group

IBM Position
W3C Enterprise Web Services WS

Christopher Ferris
Senior Technical Staff Member
2003 IBM Corporation

Feb, 2007

IBM Software Group | WebSphere software

Debunking the Myth


Many RESTafarians have taken the position that REST and Web
services are somehow incompatible with one another
Fact: recent versions of SOAP and WSDL have been designed
specifically to enable more RESTful use of Web services
SOAP1.2
SOAP1.2 Response MEP
Web Method

WSDL2.0
HTTP binding permits assigning verbs (GET, POST, etc.) on a peroperation basis
Attribute to mark an operation as safe

Unfortunately, the implementations of Web services runtimes and


tooling have made RESTful use of Web services difficult
Feb 2007

IBM Software Group | WebSphere software

IBMs Vision
a single scalable stack, offering the best of the Web in simple
scenarios, and scaling gracefully to SOAP based Web services with
the addition of optional extensions when more robust quality of service
features are required. We believe that the right steps have been taken
in the development of some of the more recent WS-* specifications to
enable this vision to become reality.

Feb 2007

IBM Software Group | WebSphere software

URI vs EPR
A URI is an identifier
http://www.weather.com/outlook/travel/businesstraveler/local/01534

An EPR is not (supposed to be) an identifier


May carry reference parameters (similar to HTTP Cookies)
No defined means of equivalence comparison
EPR Address (URI) is the address of the service
<wsa:EndpointReference>
<wsa:Address>http://www.weather.com/weatherService/</wsa:Address>
<foo:ZipCode>01534</foo:ZipCode>
</wsa:EndpointReference>

Some uses of EPR reference parameters treat the EPR as if it were an


identifier
WS-Naming

Feb 2007

IBM Software Group | WebSphere software

Uniform Interface
Web services dont expose a uniform interface
(although, this is changing a bit with the emergence of WSResourceTransfer and WS-MetadataExchange)

WSDL is used to provide a description of the service interface that


clients may use to interact with that service
This means that deploying a new Web service requires socialization of the
specifics of its interface before any prospective client may interact with that
service
Uniform interface lowers the barrier to entry of new services

In contrast, new HTTP-based services can be made available without


the need to upgrade everyones browser

Feb 2007

IBM Software Group | WebSphere software

Choose Wisely, Grasshopper


It is important to note that REST and Web services are not mutually
exclusive architectural styles. There may be many circumstances in
which an application will want to take advantage of both styles.
Examples
Electronic Manufacturing
RosettaNet RAE and Web services bindings
Automotive
When dealing with smaller supply-chain partners, they have need to
expose an interface that is more accessible (e.g. web based)
Financial
Web-based (portal) access for individuals, Web services for enterpriselevel interactions, some leveraging the same functions
Others

Feb 2007

IBM Software Group | WebSphere software

When it makes sense to use REST


To leverage direct integration with the Web

Caching of resource representations for scalability and to mitigate


against transient failures
Streaming of large amounts of data
Direct access to the resource representation from a Web browser
Manipulate the same resource interactively (e.g. using HTML forms)
and programmatically (e.g. via SOAP or POX over HTTP)

Feb 2007

IBM Software Group | WebSphere software

When it makes sense to use WS-*


Message-level security, such as when you need permanent total or
partial encryption of message content, or when you need to have the
authentication credentials bound to the message content
Multi-protocol exchanges (e.g. HTTP to WebSphere MQ)
Intermediation of message content between original sender and
ultimate recipient such as an XSLT transformation to or from a
standardized representation of the message content
Integration into an automated business processes orchestration
engine using a standard such as WS-BPEL
Additional quality of service capabilities such as reliable messaging,
transactions and advanced security capabilities

Feb 2007

IBM Software Group | WebSphere software

Thank You!

Thanks for listening.


chrisfer@us.ibm.com

Feb 2007

You might also like