SAP TechEd ‘03 Basel Building Web Services with ABAP and SAP Web Application Server Timm Falter Project Manager Web Services / SAP AG Walldorf Martin Huvar Product Manager Enterprise Services / SAP AG Walldorf Learning Objectives As a result of this lecture, you will be able to: (cid:132) Comprehend the main ideas of SAP’sWeb Service definition (cid:132) Understand the architecture of the Web Service Framework (cid:132) Understand what Virtual Interfaces, Web Service Definitions, Web service Configurations and other concepts of the Web Service Framework are SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /2 © 2003 SAP AG Session ID, Speaker 1 SAP TechEd ‘03 Basel Agenda Web Service Overview (cid:132) What are Web services? (cid:132) Why do we need them? SAP NetWeaver Web Service Technology SAP Web Application Server 6.40 (cid:132) Providing Web Services (cid:132) Consuming Web Services Summary SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /3 Web Services Definition Web Servicesare application functionalities supporting direct interaction by responding to service requests based on openInternet Standards SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /4 © 2003 SAP AG Session ID, Speaker 2 SAP TechEd ‘03 Basel The nature of Web Services Web Services act like a black-box that may require input and deliver a result are modular, self-contained and self-describing work on top of any communication technology stack can be published, discovered and invoked based on open technology standards work in synchronous and asynchronous scenarios facilitate integration within an enterprise as well as cross enterprises SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /5 Web Service Paradigm Service Service Publication Discovery 1 2 Service Directory WSDL/ UDDI XSD XML/ SOAP http 3 Service Service Requestor Execution Service Provider SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /6 © 2003 SAP AG Session ID, Speaker 3 SAP TechEd ‘03 Basel Web Services: Examples Intelligent product catalog search Publish and analyze financial reports (XBRL based) Product availability check Electronic bill presentment and Pricing inquiry payment Customer credit check Matching vacancies and job applicants profiles Order status check Postal service address check Vendor managed inventory (cid:129) Demand forecasts, stock UDDI registration and discovery replenishment … services Dynamic auctioning and bidding Automated web searches (Google) SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /7 Demo Demo Web Service Example SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /8 © 2003 SAP AG Session ID, Speaker 4 SAP TechEd ‘03 Basel Example: Web Service Szenario Credit Limit Check Customer Company Service Provider CRM Credit Financial Credit Management standing System Database Order Create Credit Order Limit Check Database History Creditlimit OK? Process Order OK rejected = Web Service SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /9 Credit Limit Check Example: Architecture SAP Web AS 6.30 (Java) Microsoft Excel XP / 2003 Beta Cell Phone Shop Credit Limit Check Web Application (JSP) Company Worksheet Web Service Proxy Web Service Proxy Web Service Web Service Virtual Interface Virtual Interface Session Enterprise Java Bean SAP Web SAP JCoProxy SAP JCoProxy AS 6.30 (Java) RFC Function Module RFC Function Module (External Id -> Internal ID) (Credit Limit Check) R/3 Enterprise 4.7 SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /10 © 2003 SAP AG Session ID, Speaker 5 SAP TechEd ‘03 Basel Fundamental Elements of the complete Web Service Solution Open Technology Standards for Web Services Web SReervfeicreent XML, WSDL, SOAP, UDDI, WSI Tectho n obluosgiyness semantics RosettaNet, Spec2000, HR-XML, Web Service XBRL, IFX, Technology papiNet, .... SAP NetWeaver SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /11 Agenda Web Service Overview (cid:132) What are Web services? (cid:132) Why do we need them? SAP NetWeaver Web Service Technology SAP Web Application Server 6.40 (cid:132) Providing Web Services (cid:132) Consuming Web Services Summary SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /12 © 2003 SAP AG Session ID, Speaker 6 SAP TechEd ‘03 Basel Providing Web services based on Open Standards SAP Web Development Application Environment Server (cid:122)Web Service Configuration UDDI (cid:122)UDDI Publishing (cid:122)WSDL Generation n o i t a WSDL c Web Service i l Configuration p p A SOAP Processing s FC s R e n (cid:122)(cid:122)EPlxutegngsaibbllee FReuantutirmese erviceaces BAPI Busi SOAP Srf (cid:122)Security b te oc en D (cid:122)Transactions WI I Web Service (cid:122)Protocols B J E Consumer SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /13 Consuming Web services based on Open Standards Development SAP Web Environment Application (cid:122)UDDI based Web Service Server discovery UDDI n (cid:122)Web Service Proxy o Generation i at (cid:122)Proxy Configuration WSDL c i l p p A Proxy s Config. s e e usin Servicoxies SO(cid:122)EAxtPen Psibrole cruenstismieng B eb Pr (cid:122)Pluggable features SOAP W (cid:122)Security (cid:122)Transactions Web Service (cid:122)Protocols Provider SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /14 © 2003 SAP AG Session ID, Speaker 7 SAP TechEd ‘03 Basel Exchange Infrastructure & Web Services Exchange Infrastructure BBuussinineessss P Prroocceessss n oe EEnnggininee tim IInntteeggrraattiioonn granti RRoouutitningg RReeppoossiittoorryy&& eu DDiirreeccttoorryy ntR MMaappppiningg I SAP Web ApplicationServer PPeerrssiisstteennccyy RRFFCC WWeebb S Seerrvviciceess I nInfrfraasstrtruucctuturree ...... RRMMII SOAP SOAP Adapter Adapter Native Native SOAP SOAP Protocol Protocol mmyySSAAPP NNOONN SSAAPP mmyySSAAPP NNOONN SSAAPP CCoommppoonneenntt CCoommppoonneenntt CCoommppoonneenntt CCoommppoonneenntt SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /15 Enterprise Services: Runtime View W e e Standard Web Service ur b S Execution (P2P) uct Application OuPtrbooxuynd ervice Infrastru Service Infrastr InPbroouxnyd Application ctu Integration eb re Server W Integration SAP Web AS as client Repository SAP Web AS as server & Directory XI Mediated Execution via Web Services SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /16 © 2003 SAP AG Session ID, Speaker 8 SAP TechEd ‘03 Basel Agenda Web Service Overview (cid:132) What are Web services? (cid:132) Why do we need them? SAP NetWeaver Web Service Technology SAP Web Application Server 6.40 (cid:132) Providing Web Services (cid:132) Consuming Web Services Summary SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /17 Web Service within SAP Web Application Server The Web Service capability within SAP Web AS is (cid:132) the foundation for all mySAP.com solutions (cid:132) a scalable, reliable Web application infrastructure that delivers high- performance Web Services (cid:132) offering Web Service functionality for the ABAP and J2EE personality with a common architecture (cid:132) allowing to expose existing functionality (BAPIs, RFMs, IDOCs, EJBs, Java Classes, XI Server Proxies) as Web Service (cid:132) easily allowing to consume Web Service from any source (cid:132) requiring only configuration (no coding) SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /18 © 2003 SAP AG Session ID, Speaker 9 SAP TechEd ‘03 Basel Benefits (cid:132) Web Service interfaces provide a ‚virtual‘ abstraction from the implementation layer (cid:132) Fully integrated into development environment (cid:132) Full fledged UDDI capabilities (cid:139)UDDI server implementation (cid:139)UDDI client functionality (cid:132) Standard compliant WSDL generation (cid:132) Support of client proxy generation for ABAP and J2EE (cid:132) Extensible SOAP Runtime (cid:132) Pluggable Features (cid:139) Security (cid:139) Protocols (cid:139) .... SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /19 SAP Web Services Infrastructure - Role-based Approach - (cid:132) Provider-side (cid:139)Web Service Developer (cid:122)defines design time information of a Web Service (cid:139)Web Service Configurator (cid:122)defines runtime information of a Web service (cid:132) Consumer-side (cid:139)Web Service Client Developer SAP AG2003, TechED_Basel / OSI202, TimmFalter / Martin Huvar /20 © 2003 SAP AG Session ID, Speaker 10
Description: