Lesson: Providing XML Web Services to Trading Partners Students may want to create their own XML Web services and make them available to their trading partners.. Lab: Integrating XML We
Trang 1Contents
Overview 1
Lesson: Introduction to XML Web Services 2
Lesson: Applying XML Web Services to
Trang 2and no association with any real company, organization, product, domain name, e-mail address, logo, person, place or event is intended or should be inferred Complying with all applicable copyright laws is the responsibility of the user Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property
2001 Microsoft Corporation All rights reserved
Microsoft, Windows, BackOffice, BizTalk, FrontPage, Hotmail, PowerPoint, Visual Basic, Visual C++, Visual Studio, and Windows Media are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries
The names of actual companies and products mentioned herein may be the trademarks of their respective owners
Trang 3Instructor Notes
This module introduces students to Extensible Markup Language (XML) Web services and how students can use them to process purchase orders from business-to-business (B2B) trading partners Students will learn how to choose XML Web services and how to integrate them in their order processing workflow Students will also explore the requirements for hosting their own XML Web services and providing them to trading partners
After completing this module, students will be able to:
! Describe how to use XML Web services in a B2B scenario
! Decide how to integrate XML Web services in order processing
! Decide whether and how to make their own XML Web services available to trading partners
To teach this module, you need Microsoft® PowerPoint® file 2420A_08.ppt
To prepare for this module:
! Read all of the materials for this module
! Perform the instructor demonstration
! Review Course 2524A, Developing XML Web Services
! Download and become familiar with the Simple Object Access Protocol (SOAP) Toolkit, located at http://msdn.microsoft.com/downloads
The information in this section provides setup instructions that are required to prepare the instructor computer for the hands-on practice
! To prepare for the demonstration
• Ensure that the instructor computer can connect to the Internet
Trang 4How to Teach This Module
This section contains information that will help you teach this module
Lesson: Introduction to XML Web Services
This module begins by explaining the challenges that businesses must overcome to integrate business systems, and how students can use XML Web services to overcome those challenges This lesson is introductory material For
more in-depth coverage of XML Web services, refer students to Course 2524A,
Developing XML Web Services
The following information is specific to individual pages in this lesson
This page is intended only to familiarize students with XML Web services and
to provide a high-level overview of how XML Web services work It is not necessary to discuss in depth the mechanics of XML Web services, but ensure that students understand how XML Web services work
This demonstration uses Microsoft’s profile in the Universal Description, Discovery and Integration (UDDI) Business Registry In this demonstration, show students how an XML Web service returns information based on a query Encourage discussion about the XML Web service, and ask students how they could use an XML Web service or create their own Use this example as a reference point throughout the module Also point out that the Microsoft UDDI Web site is an XML Web service
Lesson: Applying XML Web Services to Order Processing
This lesson provides more detail about integrating XML Web services For the purpose of B2B trading partner integration, XML Web services are most commonly used in order processing However, students can integrate XML Web services in almost any part of their business systems
The following information is specific to individual pages in this lesson
Check the Microsoft BizTalk™ Server 2000 Web site at http://www.microsoft.com/biztalk for white paper updates about the use of XML Web services with BizTalk Server in order processing
Although you can call an XML Web service from a Microsoft Commerce Server 2000 pipeline, emphasize that students should do so only under very specific conditions, which are mentioned on this page
Lesson: Providing XML Web Services to Trading Partners
Students may want to create their own XML Web services and make them available to their trading partners This lesson discusses the design considerations for doing so, along with a business justification for creating XML Web Services and infrastructure requirements for making them available
Elements of an XML
Web Service Document
Demonstration: Using
an XML Web Service
How BizTalk Server Can
Call XML Web Services
Considerations for
Integrating XML Web
Services with Commerce
Server
Trang 5The following information is specific to individual pages in this lesson
Unless time permits, avoid an in-depth discussion about high availability and Web service architecture
This summary page highlights the main design elements of the module It is intended to be a simple module review and a tool to help students prepare for the final module and lab, where they analyze a new trading partner integration scenario and create a B2B design plan
Lab: Integrating XML Web Services
In this design lab, students examine how Adventure Works can integrate XML Web services to streamline its order processing workflow Students learn how Adventure Works can automate aspects of its order processing and offer its own XML Web services to trading partners
The design lab is scheduled for 45 minutes Divide students into pairs or small teams, and ask them to spend 20 minutes reading and discussing the scenario Then, have each pair or team present its answers to the class
Although the lab scenario provides a clear path to certain design decisions, it contains enough ambiguity to encourage student discussion and debate
Students may disagree with the answers that are provided in the Delivery Guide and the Student Materials compact disc Disagreement is acceptable if students can provide adequate business or technical justification To increase student involvement, ask a representative of each team to present the team’s answers to the class and then defend the design
Trang 6Customization Information
This section identifies the lab setup requirements for a module and the configuration changes that occur on student computers during the labs This information is provided to assist you in replicating or customizing Microsoft Official Curriculum (MOC) courseware
This module contains a single paper-based design lab There are no hands-on labs in this module, and as a result, there are no lab setup requirements or configuration changes that affect replication or customization
Trang 7Overview
! Introduction to XML Web Services
! Applying XML Web Services to Order Processing
! Providing XML Web Services to Trading Partners
Supplier Business Logic Business Logic
Other Business Systems
Other Business Systems CRM ERP Inventory Accounting
XML Web Service
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
Extensible Markup Language (XML) Web services enable different applications to exchange information locally and over the Internet without complex integration requirements You can use XML Web services to integrate your business systems with those of your trading partners; to apply XML Web services to internal applications, such as order processing; and to provide value-added services to trading partners who buy from you
In a business-to-business (B2B) scenario, XML Web services can improve your order processing workflow You can integrate XML Web services that other organizations develop, or you can develop your own XML Web services To enable your business partners to benefit from the XML Web services that you develop, expose your XML Web services over the Internet
After completing this module, you will be able to:
! Describe how to use XML Web services in a B2B scenario
! Decide how to integrate XML Web services in order processing
! Decide whether and how to make your own XML Web services available to your trading partners
Introduction
Objectives
Trang 8Lesson: Introduction to XML Web Services
! Challenges to Integrating Applications
! What Are XML Web Services?
! How XML Web Services Can Work in a B2B Solution
! Elements of an XML Web Service Document
! Reasons to Use XML Web Services in a B2B Solution
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
XML Web services enable trading partners to solve many of the challenges of integrating applications and enable your business systems to take advantage of services that other organizations provide
After completing this lesson, you will be able to:
! Explain the difficulties of integrating applications
! Describe XML Web services
! Describe how a typical XML Web service works in a B2B trading partner integration solution
! Identify the elements of an XML Web service document
! Explain the benefits of using XML Web services in a B2B integration solution
Introduction
Lesson objectives
Trang 9Challenges to Integrating Applications
Common integration challenges
! Programming languages and operating systems differ
! The corporate firewalls prohibit RPC traffic
! Locally installed COM components must be registered and manually updated
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
For trading partners to integrate their business applications, the applications must be able to communicate freely with each other, which can be difficult In the example shown in the slide, a supplier that uses an order processing application receives a purchase order, but wants to obtain tax calculations over the Internet from another application
Several major challenges exist when you exchange information externally The operating system or programming language of the order processing application may be incompatible with the service that provides the data For example, if the order processing application uses Component Object Model (COM)
architecture, but the tax calculation application was developed on a different platform, a third middleware application is necessary to enable the two applications to communicate Middleware applications are often expensive and require significant programming knowledge to implement
Most corporate firewalls prohibit Remote Procedure Call (RPC) traffic because
of its inherent security risks Even if both applications in the previous example use COM architecture, for example, RPC traffic would still occur each time the order processing client requests information from the tax application server The corporate firewall, however, would block the RPC calls
Most locally stored components require continual monitoring for updates To eliminate the need for RPC traffic, the tax company in the previous example can supply the necessary COM or COM+ components to suppliers, which register and install the components in the order processing application
However, when an update occurs, the supplier must obtain the updated files from the tax company and then update the components manually
Trang 10What Are XML Web Services?
Supplier
XML Web Service Provider
Internet XML Web services
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
XML Web services are XML-based units of application logic that provide data and services to other applications XML Web services enable applications to communicate over the Internet regardless of operating system or programming language
An XML Web service is programmable application logic that applications can access by using standard Internet protocols XML Web services are defined by public standards organizations, such as the World Wide Web Consortium (W3C)
XML Web services combine the best aspects of component-based development and the Internet Developers can create XML Web services without knowing how other applications will implement them Applications call XML Web services by using common Web protocols and data formats, such as Hypertext Transfer Protocol (HTTP) and XML
XML Web services enable applications to make RPC-like calls over the Internet and to share data The calls can occur regardless of the operating system that hosts the XML Web service or the programming language that was used to create the XML Web service By using XML Web services to share data, different applications can be independent of each other, yet still work together
to perform a particular task
Trang 11How XML Web Services Can Work in a B2B Solution
1 An application calls the XML Web services
2 The XML Web services perform the requested calculations
3 The XML Web services send the calculated results to the application
Shipping Company’s Web Server
Tax Company’s Web Server
Order Processing Application
Subtotal: 500.00
Tax: 45.00 Shipping: 30.00
Total: 575.00
45.00 30.00
Internet 45.00
30.00
2
2 1
3
3 1
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
Order processing is one of the most likely scenarios in which you integrate XML Web services in a B2B integration solution
The preceding slide shows how XML Web services can function in an order processing scenario The order processing application receives a purchase order (PO) for goods that totals $500 Before the supplier generates an invoice, the order processing application adds any applicable tax and the appropriate shipping charges
To complete an XML Web service transaction in this example:
1 The application makes calls to XML Web services The order processing
application invokes the tax and shipping XML Web services that your organization integrated in its order processing application The order processing application prepares requests and transmits them by using HTTP
to the XML Web services that the tax and shipping companies provided
2 The XML Web services execute The XML Web service at each company
receives the request and makes the necessary calculations
3 The XML Web services send the calculated results Each XML Web service
prepares a response that includes the calculated data It then encapsulates the data with the necessary protocol and transmits the response back to the order processing application by using HTTP The order processing application updates the purchase order with the information and then sends the PO to the next step in the order processing workflow
Introduction
Example of an XML Web
service
Trang 12Elements of an XML Web Service Document
An XML Web service document contains:
! An HTTP header
! A SOAP wrapper
! An XML Web service request and response
Response Request
POST /SalesTax.asmx HTTP/1.1 Host …
Data request
to an XML Web service
Data response from an XML Web service
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
An XML Web service call is a document that contains an HTTP header, a Simple Object Access Protocol (SOAP) wrapper, and the XML data request and response
A typical XML Web service document contains standard HTTP headers that send and receive information The XML Web service uses HTTP to transmit data between it and the requesting application (In the example in the slide, the HTTP header is abbreviated.) Although most XML Web services use HTTP, they can use any transport protocol
SOAP is a lightweight protocol that is used to exchange XML messages The SOAP specification defines a set of rules for how you can use XML to represent data XML Web services use a SOAP wrapper to enclose the XML
By wrapping all calls to and responses from XML Web services, SOAP enables XML Web services to be independent of an operating system or programming language Other parts of the SOAP specification define an extensible message format, conventions for representing RPCs that use the SOAP message format, and bindings to the HTTP protocol
The SOAP wrapper contains the request that the XML Web service client sends
to the XML Web service The request describes the method, or operation, of the XML Web service that the request invokes, and all arguments that the invoking application passes to the XML Web service The response instructs the
application that called the XML Web service to process the information that the XML Web service returns
For more information about HTTP and SOAP, see the World Wide Web Consortium Web site at http://www.w3c.org
Trang 13Reasons to Use XML Web Services in a B2B Solution
Benefits
Business
" Ability to receive dynamic data upon request
" Access to data that is stored anywhere and on any platform
" Ability to easily create business logic applications
" Ability to receive dynamic data upon request
" Access to data that is stored anywhere and on any platform
" Ability to easily create business logic applications
Technical
" Low integration and maintenance requirements
" Suitability for EAI
" Conformity with industry standards
" Low integration and maintenance requirements
" Suitability for EAI
" Conformity with industry standards
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
By using XML Web services, you can streamline business practices and add value to your trading partners
You can use XML Web services to enhance your current business processes and to create new ones XML Web services can offer the following benefits to your business processes:
! Dynamic data upon request XML Web services can access dynamic, or
changing, data from other sources, including other organizations For example, an XML Web service can provide you with a tax rate based on a price that you supply and can also gather the latest currency exchange rates
! Access to data anywhere, on any platform Because XML Web services are
independent of operating systems and programming languages, and they are designed to be distributed, the data that an XML Web service calls can reside anywhere, on any platform For example, an XML Web service can retrieve the latest shipping costs from several freight lines, and then a locally installed component that you provide can select the freight line that offers the lowest cost, regardless of the platform that the freight line uses
! Integration of business applications XML Web services are ideally suited
for using with internal business applications because you can integrate them easily with dissimilar platforms and programming languages For example, you can create an XML Web service that calls information from your Enterprise Resource Planning (ERP) system and sends it to your Microsoft®Commerce Server 2000 and Microsoft SQL Server™ 2000 order
management system
Introduction
Business benefits
Trang 14The technical benefits of XML Web services are equally compelling:
! Low integration requirements Unlike COM and COM+ applications, XML
Web services do not require you to register and maintain dynamic link library (DLL) files And unlike RPCs, XML Web services use HTTP as the transport protocol and do not require complex firewall configurations
! Suitability for EAI Because XML Web services are independent of
programming languages and operating systems, they are well suited for use with Enterprise Application Integration (EAI) systems For example, an organization may want to integrate a Java-based inventory control system and a COM architecture-based ERP system in its Microsoft supplier enablement solution You can use XML Web services to provide data to the ERP system, rather than use complicated and costly middleware software
! Compliance with industry standards Microsoft NET XML Web services
follow standards that are issued by major standards bodies, such as W3C XML Web services that developers create by using Microsoft
Visual Studio® version 6.0 with the SOAP Toolkit version 2.0, or by using Microsoft Visual Studio NET, are fully interoperable with any vendor, platform, or programming language that follows the W3C standards
Technical benefits
Trang 15Demonstration: Using an XML Web Service
1 Open the UDDI Web site at http://uddi.microsoft.com
2 Search for XML Web services offered by Microsoft
3 Demonstrate the Best Bets service
1 Open the UDDI Web site at http://uddi.microsoft.com
2 Search for XML Web services offered by Microsoft
3 Demonstrate the Best Bets service
Demonstration Steps
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
In this demonstration, the instructor will show an example of a simple XML Web service Using the Universal Description, Discovery and Integration (UDDI) Business Registry, you can gain access to an XML Web service that Microsoft provides This XML Web service offers you an easy way to find information about a particular Microsoft product or technology on the Microsoft Web site In this case, you will see several hyperlinks on the Microsoft Web site where you are most likely to locate information about Microsoft BizTalk™ Server 2000
The following steps occur in the demonstration:
1 Open the Microsoft UDDI Web site at http://uddi.microsoft.com
2 Click Advanced Search
3 In the Search for box, type 08-146-6849
4 In the in box, select Business identifier, and then click the arrow button
5 Click Microsoft Corporation
6 Under Services, click Web services for smart searching
7 Under Bindings, click the hyperlink next to the description Best Bets
8 On the MSComSearchService Web Service page, click GetBestBets
9 Under GetBestBets Web Method, in the Query box, type BizTalk Server and then click Invoke
10 Scroll down the XML document to view the information that the XML Web service returned
Introduction
Procedure
Trang 16Lesson: Applying XML Web Services to Order Processing
! Considerations for Selecting XML Web Services
! How to Use UDDI to Locate XML Web Service Information
! How BizTalk Server Can Call XML Web Services
! Considerations for Integrating XML Web Services with Commerce Server
***************************** ILLEGAL FOR NON - TRAINER USE ******************************
In a B2B integration scenario, the order processing workflow is the most likely place for you to use an XML Web service because it can expedite your
processing, offer extra information, and provide other value-added services that benefit your trading partners
Before you use an XML Web service, carefully study the costs and benefits of the service You can use UDDI, a free online service, to discover XML Web services that third parties offer If you decide to use the service, you must integrate the service with your order processing workflow Both BizTalk Server and Commerce Server can accommodate XML Web services in their order processing workflows Evaluate the capabilities of both applications to choose the most appropriate one for your business and technical requirements
After completing this lesson, you will be able to:
! Balance the considerations for selecting an XML Web service
! Locate XML Web service information by using UDDI
! Choose between BizTalk Server and Commerce Server for integrating XML Web services
Introduction
Lesson objectives