XML for Java Developers G22 3033 002 Session 4 Sub Topic 3 Towards P2P Computing Dr Jean Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical Sciences Part I Soap and Web Services 1 Evolution of integration methods 2001 Late 1990s Early 1990s 1990 Web App Standards Web Services Web Protocol Standards HTTP HTML XML RosettaNet OBI cXML App Integration Standards Custom static integration Web Services Machine to machine communication Description of service semantics metadata WSDL Web Service Definition Language Discovery of appropriate services UDDI Universal Description Discovery Integration service Allow services to be defined deployed manipulated evolved in an automated fashion Basis for expressing higher level business logic Using flow languages Potential EDI replacement ERP accelerator Reduce middleware proliferation Improve desktop integration 2 Drivers for Web Services Microsoft NET Hailstorm Sun Sun ONE HP e speak IBM Dynamic e business UN CEFACT OASIS ebXML Plus Oracle Borland Submitted to IETF Nov 1999 W3C WG September 2000 RPC Interoperability problems Naming of communication endpoints CORBA IORs DCOM OBJREFs Support for multiple interfaces per object CORBA implicitly there is 1 interface in an IOR DCOM multiple interfaces Iunknown Format of parameter values CORBA CDR DCOM Network Data Representation 3 IIOP vs DCOM I IIOP vs DCOM II 4 URIs URLs URNs Universal Resource Identifier A formatted string that uniquely identifies a resource Uniform Resource Locator encode the underlying protocol needed to locate the resource as well as its location http host port path qry Uniform Resource Name location independent in no way imply any protocol or mechanism for locating the resource being identified urn NID NSS NID namespace NSS namespace specific string urn uuid 00000000 0000 0000 C000 000000000046 Simple Object Access Protocol A light weight XML messaging convention exchange of structured typed information no application or transport semantics XML datagrams extensibility Common use RPC over HTTP using XML getStockQuote issueQuery sendOrder Other uses are possible One way messaging Multicast The KISS principle absolute minimum of functionality Keep It Simple Stupid 5 SOAP reference UDDI I Universal Description Discovery Integration An industry initiative for B2B interoperability First spec s outlined by Ariba Microsoft IBM Ariba Microsoft IBM HP SAP operator nodes Business Registry of Web services Allow companies to register their business services Accessible via SOAP Web service a self describing self contained modular unit of application logic Web services can be mixed matched with other web services to execute a larger workflow or business Tx and via browser businessEntity businessService bindingTemplate tModel provides some business functionality to other app s WSDL Web Service Definition Language 6 UDDI II XML Schema for UDDI businessEntity Business information businessService Service information bindingTemplate Binding information tModel Information on specifications technical fingerprint list of references Inquiry API Publisher API Coping with Failures inability to predict detect or recover from failures within the systems of the remote partner Use cached bindingTemplate retry on failure Rely on partner to update registry entry UDDI III Discrete business roles The business of e business services IBM Lifecycle Build Deploy Run Manage Publish WSDL Find UDDI Bind SOAP Applications will increasingly be based on compositions of services discovered marshaled dynamically at runtime 7 UDDI Sample Interaction I xml version 1 0 encoding UTF 8 Envelope xmlns http schemas xmlsoap org soap envelope Body find business generic 1 0 xmlns urn uddi org api name Microsoft name find business Body Envelope UDDI Sample Interaction II businessList generic 1 0 operator Microsoft Corporation truncated false xmlns urn uddi org api businessInfos businessInfo businessKey 0076B468 EB27 42E5 AC09 9955CFF462A3 name Microsoft Corporation name description xml lang en Empowering people through great software any time any place and on any device description serviceInfos serviceInfo businessKey 0076B468 EB27 42E5 AC09 955CFF462A3 serviceKey 8BF2F51F 8ED4 43FE B665 38D8205D1333 name Electronic Business Integration Services name serviceInfo serviceInfo businessKey 0076B468 EB27 42E5 AC09 955CFF462A3 serviceKey D2BC296A 723B 4C45 9ED4 494F9E53F1D1 name UDDI Web Services name serviceInfo serviceInfos businessInfo businessInfos businessList 8 UDDI Sample Interaction III find service generic 1 0 xmlns urn uddi org api businessKey 0076B468 EB27 42E5 AC09 9955CFF462A3 name UDDI Web Services name find service serviceList generic 1 0 operator Microsoft Corporation truncated false xmlns urn uddi org api serviceInfos serviceInfo businessKey 0076B468 EB27 42E5 AC09 9955CFF462A3 serviceKey D2BC296A 723B 4C45 9ED4 494F9E53F1D1 name UDDI Web Services name serviceInfo serviceInfos serviceList UDDI Sample Interaction IV get serviceDetail generic 1 0 xmlns urn uddi org api serviceKey D2BC296A 723B 4C45 9ED4 494F9E53F1D1 serviceKey get serviceDetail serviceList generic 1 0 operator Microsoft Corporation truncated false xmlns urn uddi org api serviceInfos serviceInfo businessKey 0076B468 EB27 42E5 AC09 9955CFF462A3 serviceKey D2BC296A 723B 4C45 9ED4 494F9E53F1D1 name UDDI Web Services name serviceInfo serviceInfos serviceList find business generic 1 0 xmlns urn uddi org api tModelBag tModelKey uuid 4CD7E4BC 648B 426D 9936443EAAC8AE23 tModelKey tModelBag find business 9 UDDI Sample Interaction V serviceDetail generic 1 0 operator Microsoft Corporation truncated false xmlns urn uddi org api businessService businessKey 0076B468 EB27 42E5 AC09 9955CFF462A3 serviceKey D2BC296A 723B 4C45 9ED4 494F9E53F1D1 name UDDI Web Services name description xml lang en UDDI SOAP XML message based programmatic web service interfaces description bindingTemplates bindingTemplate bindingKey A9CAFBE4 11C6 4BFE 90F5 595970D3DE24 serviceKey D2BC296A 723B 4C45 9ED4 494F9E53F1D1 description xml lang en Production UDDI server Inquiry interface description accessPoint URLType http http uddi microsoft com inquire accessPoint tModelInstanceDetails tModelInstanceInfo tModelKey uuid 4CD7E4BC 648B 426D 9936 443EAAC8AE23 description xml lang en UDDI SOAP Inquiry Interface description tModelInstanceInfo tModelInstanceDetails bindingTemplate SOAP Mandatory Features Transport Binding how to get the message to its
View Full Document