IBM Software Group | WebSphere software 2 2 Feb 2007 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 per- operation 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
IBM Software Group | WebSphere software 3 3 Feb 2007 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.
IBM Software Group | WebSphere software 4 4 Feb 2007 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 http://www.weather.com/weatherService/ 01534 Some uses of EPR reference parameters treat the EPR as if it were an identifier WS-Naming
IBM Software Group | WebSphere software 5 5 Feb 2007 Uniform Interface Web services dont expose a uniform interface (although, this is changing a bit with the emergence of WS- ResourceTransfer 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
IBM Software Group | WebSphere software 6 6 Feb 2007 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 enterprise- level interactions, some leveraging the same functions Others…
IBM Software Group | WebSphere software 7 7 Feb 2007 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)
IBM Software Group | WebSphere software 8 8 Feb 2007 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
IBM Software Group | WebSphere software 9 9 Feb 2007 Thank You! Thanks for listening. firstname.lastname@example.org