1 / 40

All Web Services are != But Some are more != than Others

All Web Services are != But Some are more != than Others. Looking under the hood at two very different Web Service Frameworks. Ron Kleinman Chief Vertical Evangelist Sun Microsystems. What exactly IS a Web Service?. XML Commands. Component. XML Responses. HTML: Presentation

andra
Download Presentation

All Web Services are != But Some are more != than Others

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. All Web Services are !=But Some are more != than Others Looking under the hood at two very different Web Service Frameworks. Ron Kleinman Chief Vertical Evangelist Sun Microsystems

  2. What exactly IS a Web Service? XML Commands Component XML Responses

  3. HTML: Presentation <b> Mr. John Jones 1234 </b> XML : Interpretation <employee> <name title = “Mr.”> <first> John </first> <last> Jones </last> </name> <ID> 1234 </ID> </employee> A 1-Slide XML Primer

  4. XML Message Exchanges:Minimize Assumptions about Partner • Hardware run on • Operating System run under • API / Language written in (OO?) • Middleware Architecture deployed • Physical Connection

  5. Heterogeneous Interoperability Sender Java On Solaris DOM Parser XML Messages Receiver C++ On Windows SAX Parser

  6. A XML B Two Modes of XML Use Use XML to marshal arguments of a Remote Procedure Call Use XML to define a Business Document

  7. Two Types of PartnersTwo Types of Infrastructure • [INT] Common Client/Service ownership • Same Security / Naming management • Islands of interoperability • [EXT] B2B Client Service Connection • Common “Reference” Infrastructure needed Client XML Message Service Infrastructure

  8. A B2B Document Is NOT a Remote Procedure Call Purchase Order • Asynchronous vs. Synchronous • Receipt / Acceptance / Business Response • Legally Binding options • Secure (Encrypted) • Non-repudiation of Document (Dig Sig) • Non-repudiation of Response (Dig Sig) • Tamper Proof (encrypted message digest) A B

  9. Remote Method Call EAI Behind Firewall Sync response WUST stack Web Service Document Exchange B2B Across Internet Async response(s) ebXML stack Business Web Service XML Interoperability:Competing Paradigms

  10. EAI: Web Services vs. Corba

  11. Deploying WUST-based Web Services for B2B use • Week 0 • Post UDDI entry as “shoe supplier” • Include WSDL describing how to buy • Week 1 • 300 hits!! • 295 looking, 3 buy, 2 ??? • Week 2 • First “denial of service” attack  Internet B2B is different!

  12. Business Web Services Interoperability is always harder … … when it’s not you on both ends of the wire.

  13. XML Infrastructure Questions Use Cases  The Plumbing XML Messages Client Web Service Infrastructure

  14. 1. Once-only or Session • Once only: All setup info in each message • Batch multiple requests • Partial failures • Session: State maintained between messages • Prefixed or dynamically determined • Document Version, List of supported Actions • List of optional fields which are mandatory • Security set up initially ( cookie) • Ordered Delivery • Disconnected Operation

  15. 2. Message Encoding • Multiple Payloads • Non XML Data? • Each payload represents separate data component • Multi-hop Delivery • Payload vs. Message encryption? • Route Tracing

  16. 3. Document Exchange or RPC • Responses: • Asynchronous or Synchronous? • Multiple outstanding Requests? • Multiple responses (choreography)? • Legality Issues? • Non-refutability (Digital Signature) • Non-modifiable (Digest)

  17. 4. Quality of Service • Best Effort • Application-level Request/Response/Timeout • Once-only Delivery • Guaranteed Delivery • Ordered, error free, sequential • Disconnected Operation Client Network Web Service

  18. XML Document Infrastructure The alternative to XML RPC’s WUST

  19. Document Interoperability:More than the XML Data Application Partner XML Document Document Infrastructure CORBA Objects have IIOP EDI Documents have a VAN XML Documents have … ebMS

  20. What is XML Document Infrastructure? • No Document can be received unless its envelope is transported. • No Document can be read unless its envelope is opened. • No Document can be understood unless its “context” is known.

  21. XML Message Layers:Interoperability  All Levels XML Document Context Envelope <- Infrastructure -> Transport

  22. 1. XML Document • Industry Specific • Data Structure “pass by value” • Schema defined by Committee • Common Data Elements (Ex: Currency, Name, Date) • Document Specific Elements (Ex: Guest, Traveler, Patient, Student, Customer)

  23. 2. XML Context Layer • Message Type Determines “Context” • Session Setup / Shutdown • Request / Response (*) • Create(*):Update(*):Delete / Response • Publish / Subscribe • Asynchronous Event Notification (*) (*) Messages including Document data

  24. 3. XML Envelope Layer(s) Layered set of choices of increasing Functionality  Make not Buy

  25. Packaging: MIME Usage • XML not effective packaging candidate • XML Documents only • Requires special encoding • MIME a Winner: Ubiquitous • HTTP, SMTP are MIME-aware • FTP and other transports carry MIME • Package ANY data format • Package multiple data formats

  26. ebMS and SOAP ebMS SOAP with Attachments

  27. What is ebMS? Message Envelope (MIME) – Ex: Student Application ebMS Controlled Payload(s) Msg Header Application Form Financial Statement Msg Security Art Portfolio JPG High School Transcript Manifest* Letter of Reference Reviewer’s Assessment

  28. Where is ebMS? MHS Node MHS Node Client Application Web Service ebMS

  29. XML Envelope: Outer Layer • SOAP + Attachments • Multi-hop Message Routing • Request / ACK Matching • Transport Layer Independence • Data Encoding • Multiple Payloads

  30. XML Envelope: Inner Layer • ebMS Value Adds • Multi-hop Message Tracing • Request / Response Matching • Payload Versioning • Standardized Error Reporting • Security (Authenticate, Non-refutability) • Session Support • Guaranteed once-only Reliable Message Delivery • Automatic Message Timeouts and Resends • Disconnected Operation

  31. ebXML provides a Web Service Infrastructure - for B2B Web Services A brief (4 slide) Overview

  32. OASIS and UN/CEFACT joint initiative • Mission: "... enable a global electronic marketplace where enterprises of any size and in any geographical location can meet and conduct business with each other through the exchange of XML based messages“ • Document Exchange is NOT Method Calls (signed?) • Royalty Free • ebMS Schedule: • June 2002 - complete version 2.0 • GatheringMomentum: UDDI, …

  33. ebXML Standards Stack: Infrastructure for B2B Solutions B2B Application Discover Core Components ebMS RegRep CPP/CPA Register B2B Application BPSS

  34. ebMS Vendors:A very Partial List • XML Global / Excelon / Bind / … • Sybase (free version downloadable) • Fujitsu • Web Methods • Sun Microsystems • Microsoft (via XML Global BizTalk Connector)  Drummond Connectathons  Oasis Conformance/Interoperability

  35. ebMS Adoption • OTA (Cross-web Travel Reservations) • CIDX (Chemical Industry Supply Chain) • HL7 (Patient Records - security) • RosettaNet (post RNIF 2.0) + BPSS • STAR (Auto Supply Chain) • Others (Asian Steel Consortium, …) => Use ebXML infrastructure to allow concentration on XML Document Layer

  36. Web Services and ebXML

  37. Partner “Distance” Determines Delivery Infrastructure

  38. Conclusions B2B / EAI Interoperability  agreement on: • Document Schemas / Procedure Arguments • Document / Procedure Context • Transaction Choreography • Document Envelope : Procedure Marshaling • Packaging / Routing / Transport • Security Options (Document exchange only) • Quality of Service Options (Document exchange only)  Schema “adopters” should be interoperable

  39. References • ebXML.org/specs/ebMS.pdf • www.w3.org/TR/SOAP • www.w3.org/TR/SOAP-attachments • oasis-open.org/committees/ebxml-msg/index.shtml • www.w3.org/2000/xp/Group/ • www.opentravel.org

  40. Questions?

More Related