Download
web services n.
Skip this Video
Loading SlideShow in 5 Seconds..
Web Services PowerPoint Presentation
Download Presentation
Web Services

Web Services

138 Vues Download Presentation
Télécharger la présentation

Web Services

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Web Services XML and eBusiness Technology

  2. Introduction • Web services - the next big thing? • HTTP has become the network standard • XML defines business transactions • Business applications execute over the Web • Distributed computing in a heterogeneous environment – how do you make this happen? • Web services, SOAP, Java, and networks • Computing in the early 21st century

  3. Four Paradigms of Computing • Mainframe • The era of “big iron” • Client – Server (C/S) • Networks and cheap desktop computing • Internet Computing (n-tier architecture) • Web moves to a computing platform • Web services • Web moves to a business platform

  4. Web Services • XML, Java, SOAP, and networks • Critical for B2Bi • Used in “light EAI” • Creates a “network application platform” • Sun ONE (Open Network Environment) • Facilitates “any to any” and “many to many” computing • Lets applications and process talk to each other • Creates a peer-to-peer computing environment • UDDI - directory of services for “client discovery”

  5. Service Oriented Architecture • Service provider • Creates services and publishes to registry • Service broker • Holds information on how to find and “bind” to a (web) service • Service requester • Searches the registry, finds services, and “invokes” them after “binding”

  6. Service Oriented Architecture Service Provider Publish Bind Service Broker Service Requestor Find

  7. Web Services Paradigm • Web services are the building block of a Service Oriented Architecture (SOA) • Publish application services • Find published services • Bind to the service found • Invoke the bound service • Passing required parameters for proper execution of the selected service

  8. Web Services - Protocols • WSDL - description • UDDI - discovery • SOAP - messaging • BPEL – execution • ebXML - orchestration • HTTP – transport • XML – the lingua franca for data

  9. Web Services Protocol Stack

  10. WS - Process Architecture • Services directory • WSDL and UDDI • Business transaction • SOAP request / response • SOAP envelope • Message and protocol • Transaction details • ebXML, BPEL • Network layer • HTTP, HTTPr, HTTPs, SMTP

  11. WS - Process Architecture

  12. Web Services Architecture Overview • Service creation and assembly • A visual design environment, possibly UML • Service delivery and service integration • Messaging interfaces to Internet and network APIs • Applications and Web services • Web services containers • Other legacy applications • Application platform • Identity and Policy • Security and Workflow • Collaboration services

  13. Web Services – Architecture

  14. Standards Services Architecture • Standards Services Architecture: • Leverages key XML technologies • XSLT, SOAP, WSDL • Smart process • ebXML, BPML • UDDI • Smart Policy • LDAP • Smart management • SNMP and XML routing technologies

  15. Web Services – Standards Architecture

  16. Network Layer • Lowest level in the Web services architecture is the conduit for transmission of XML messages • HTTP is most common protocol in use • HTTPR (R stands for reliable) • HTTP carries traffic through firewalls • So it is the best “business conduit” • HTTPR provides “VAN like” services (re: EDI) • “exactly once” delivery of messages, notification, etc.

  17. Network Layer – Logical Stack • WSIL, WSFL, WSHT • Application services and service flow • UDDI – Service discovery • UDDI – Service publication • WSDL – Service description • WSIL / SOAP – XML messaging • HTTP, HTTPR, SMTP, MQ, IIOP • Network layer for messaging

  18. Layer Example Service Negotiation Trading Partner Agreement Workflow, Discovery, Registries UDDI, ebXML registries, IBM WSFL, MS XLANG, BPEL4WS Service Description Language WSDL/WSCL Messaging SOAP/XML Protocol Transport Protocols HTTP, HTTPS, FTP, SMTP Business Issues Management, Quality of Service, Security, Open Standards Web Services Stack from WebServices.org

  19. SOAP • Simple Object Access Protocol (SOAP) • Internet protocol for requesting a service • Lets loosely coupled entities cooperate • Relies on HTTP/HTTPS for transport • Picks up where IIOP and CORBA left off • Conduit for Remote Method Invocation (RMI)

  20. SOAP Message – 3 Parts • The message, envelope, and “channel” • SOAP envelope • The SOAP packet structure • XML body of the message • The XML grammar of SOAP request • Specification of transport binding • The “SOAP” messaging protocol

  21. Anatomy of a SOAP Transaction • Client SOAP • Request packet (marshal and unmarshal) • Transport • SOAP running over HTTP (HTTPr / HTTPs) • Supplier SOAP • Response packet (marshal and unmarshal)

  22. SOAP Transaction

  23. SOAP Request Code POST /path/foo.pl HTTP/1.1 Content-Type: text/xml SOAPActor: interfaceURI#Add Content-Length: nnnn <soap:Envelope> <soap:Body> <Add> <arg1>24</arg1> <arg2>53.2</arg2> </Add> </soap:Body> </soap:Envelope>

  24. SOAP Response Code 200 OK Content-Type: text/xml Content-Length: nnnn <soap:Envelope> <soap:Body> <Response> <sum>77.2</sum> </Response> </soap:Body> </soap:Envelope>

  25. UDDI • Universal Description, Discovery, and Integration (UDDI) http://www.uddi.org/ • SOAP creates a request for a service • But how do you know that the service exists? • UDDI is a distributed registry (like DNS system) • Service providers post in the UDDI registry • UDDI defines a set of SOAP messages that provide the client API for accessing a UDDI registry

  26. UDDI Registry Record

  27. UDDI.org

  28. Publisher API save_business save_service save_binding save_tModel delete_business delete_service delete_binding delete_tModel get_authToken discard_authToken Inquiry API find_business find_service find_binding find_tModel get_businessDetail get_serviceDetail get_bindingDetail get_tModelDetail UDDI Services

  29. WSDL • Web Service Description Language (WSDL) • WSDL is XML based language that describes the attributes of a Web service • Register the service in the UDDI directory • Interface is the format of the SOAP request • Request / response to execute and receive results of Web service on SOAP envelope

  30. WSDL Document Structure

  31. WSDL Grammar • Message • Operation • portType • Binding • Port • Service

  32. WSFL • Web Services Flow Language (WSFL) • XML based language for defining the composition of web services • A flow composition defines how a sequenced execution of web services perform a higher level business process • Defines the interaction between a set of business partners executing Web services

  33. Preparing a Web Service • Develop the functionality you want in a service • Create the WSDL to describe the service • Generate server-side SOAP deployment • Publish deployment descriptor in UDDI registry • IBM WebSphere Studio Application Developer: • WSDL for entry in UDDI registry • XML-Java mapping for complex Java objects • Deployment descriptor for installing (WS) on a server

  34. IBM Web Services Zone

  35. Using A Web Service • Create a Java client to find and call the service • Search the UDDI registry for the desired service • From WSDL description create SOAP message • SOAP message will contain input parameters • Send SOAP request message and wait for reply • Receive SOAP response with service execution • Extract the results of service from the message and process them through a (Java etc.) client

  36. Web Services Process

  37. Java • Java is ideal development environment • Object oriented with APIs for XML: • Java API for XML Messaging (JAXM) • Java API for XML Processing (JAXP) • Java API for XML Registries (JAXR) • Java API for XML - based RPC (JAX-RPC)

  38. Security • There are several key areas to security: • Identification • Authentication • Authorization • Integrity • Privacy • Auditing • Non-repudiation

  39. B2Bi, Web services, and ebXML • What is B2Bi? • Web services for B2Bi • What is ebXML? • ebXML initiative • ebXML architecture • ebXML implementation • ebXML partner discovery • ebXML transaction messaging

  40. The Challenge of B2Bi • 100,000 companies • Middleware doesn’t do it • 99,999 factorial connections • eMarketplaces didn’t fulfill it • Integrating network business process

  41. What is B2B Integration (B2Bi)?

  42. Web Services for B2Bi

  43. ebXML Initiative • ebXML – XML, UDDI, and B2Bi • Integrate discovery, binding, and flow • UDDI – for discovery and binding • ebXML - the eBusiness lexicon of B2Bi • Creates a “pattern” for Web service flow

  44. ebXML Architecture

  45. ebXML Implementation

  46. ebXML Partner Discovery

  47. ebXML Transaction Message

  48. Advantages to Web Services • Flexibility for loose-coupling / late-binding • Flexibility in scope: Internet / intranet • Limit to enterprise or extend to trading partner • Based on HTTP, XML, and SOAP standards • Self-describing in WSDL / UDDI registries • Aggregate Web services for complex and threaded business process / B2Bi etc.

  49. Microsoft.Net