What Are Web Services? - BT Video Conferencing

Transcription

What are Web Services?A BT Conferencing white paper

What are Web Services?A BT Conferencing white paperTable of contentsWhat are Web Services?3Why Web Services?3The BT Conference Service3Future Development4Conclusion42

What are Web Services?A BT Conferencing white paperWhat are Web Services?“Web services are self-contained business functions that operate over the Internet. They are written to strict specificationsto work together and with other similar kinds of components.”1 A Web service consists of an endpoint created by theservice provider and a client application created by the service consumer. The “strict specifications” are encoded in aWSDL (Web Services Definition Language) document published by the service provider. This document is a languageand platform-independent XML document that specifies the format of input and output for the Web service endpoint.Communication to and from the Web service endpoint is also accomplished via XML, specifically SOAP (Simple ObjectAccess Protocol) messages. Because the interface between client and server is pure XML, the language and other internalaspects of the client and server applications is irrelevant to the other. For example, BT Conferencing has developed a JavaWeb service endpoint and an accompanying Microsoft .NET client application.Why Web Services?“The original Internet made it possible to send and receive email and to share access to files. The World Wide Web addeda software layer that made it easier to publish and access other content. The final development has been the emergenceof Web services, enriching the software layer with application functionality. The task of the Web services infrastructure isto support commercial-grade application functionality.”2 Web services allow businesses to integrate their systems whileleaving each the freedom to make independent decisions about operating systems, languages and databases. In addition, aservice provider does not need to reveal anything about its internal systems, since the entire external interface specificationis contained in the published WSDL documents. On the other side, a consumer does not need to open his/her systems toaccess by the service provider. The Web service endpoint will return SOAP (text-only) messages to the client, and the clientapplication has complete freedom in handling them.The BT Conference ServiceBT Conferencing is the first organization to develop a Web service — named Conference Service — that enables a customerto create and manage video conference reservations through software installed at the customer’s location.At first glance, this product may seem redundant in the face of BT Conferencing’s existing online scheduling application,Engage Meeting Manager, especially considering the similarity of features. However, there are important differencesbetween the two.While Engage Meeting Manager’s interface is any standard Web browser, the Conference Service requires client softwareat the customer’s location. This is the principle disadvantage of any Web service compared to a standard Web-basedapplication. This requirement, however, unlocks the advantage of — and reason for — the Conference Service: the clientsoftware can be completely controlled by the customer. Obvious uses for this advantage include integration with existingsystems at the customer’s end, and control of the user interface.Figure 1 shows the basic structure of the ConferenceService endpoint as well as the typical structure of a clientapplication. Each element of the diagram will be explainedin further detail.The WSDL document provides the basis for both the serverendpoint and the client application. A software utility isused to generate stubs or skeletons from the informationcontained in the WSDL. BT Conferencing uses Sun’s JavaAxis Servlet to generate server-side Java skeletons. The AxisServlet can be used to generate client-side Java stubs aswell, and other utilities exist for other languages.The Axis Servlet is also used to answer Web service calls.This servlet communicates with the HTTP client via SOAPmessages, and with the skeletons via standard Java methodFigure 1. Basic structure of the Conference Service endpoint in a typicalcalls. The skeletons, in turn, communicate with BTclient application structure3

What are Web Services?A BT Conferencing white paperConferencing’s proprietary server endpoint implementation, which accomplishes the processing of the various ConferenceService tasks.Communication between the server endpoint and the client application is currently secured via encrypted communicationover HTTPS. Transmission in both directions is secure, and non-encrypted messages to the Conference Service (overstandard HTTP) are blocked. BT Conferencing is continually exploring the latest security options and will implementappropriate and necessary security measures as they become available.The client application requires three main components: an XML-RPC API, stubs and the application itself. The XML-RPCAPI is what actually sends and receives messages to and from BT conference service. This is typically a third-party product.As mentioned earlier, the stubs are generated by a client code generator, also generally provided by a third party. Thesestubs provide an API accessible to a particular programming language. The stubs translate the messages they receiveto XML and pass them to the XML-RPC API. The stub receives an XML message back, and in turn translates it into theappropriate return type for the client application.BT Conferencing’s Conference Service makes no specification about the final client application. The only requirement forsuccessful operation is that the application conforms to the interface presented by the Web service stubs. Within thoseconstraints, customers have complete freedom to manage messages or integrate with internal systems. Some valuableapplications of this freedom include: Integration with existing scheduling application such as Microsoft Outlook Integration with customer’s database for resource scheduling, video conferencing equipment data, etc Provide a custom front-end to BT Conferencing’s reservation service Present data from Conference Service and customer systems in the same interfaceFuture DevelopmentBT Conferencing is always working to meet customers’ needs. Some of those needs will include additional ConferenceService features. This presents a problem, because additional features generally require additions to the Conference ServiceWSDL, and if the WSDL document changes, any existing client applications will be unable to use the service. To overcomethis difficulty, BT Conferencing continues to support existing versions of the Conference Service for a minimum of sixmonths. At the time a new version is released, Conference Service customers are notified of the change and informed ofthe date when the previous version will no longer be supported. Typically, customer development effort to move to a newversion without using any of its new features is minimal. BT Conferencing will provide advice and guidance in moving to anewer version, although we cannot commit development resources to customers’ client applications.ConclusionBT Conferencing’s Conference Service offers substantial advantages over traditional conference reservation methodsas well as other online scheduling applications. As with any online system, phone calls to the service provider are notneeded and secure transmission protocols are used to protect both the customer and the service provider. Beyond thesesimple advantages, the Conference Service puts control back in the customers’ hands by allowing them to create theirown scheduling systems to integrate with BT Conferencing. In addition, despite the thin-client nature of Engage Scheduleand other Web-based applications, a compatible Web browser is still required. Using Web services, the rules of the clientapplication are decided by the customer. It is even possible to create a Web services client that integrates invisibly with anexisting scheduling interface and has no user interface of its own. Given the moderate development efforts required to takeadvantage of these benefits, the Conference Service can become a valuable solution to many customers’ scheduling needs.Endnotes1Alan Kotok, “Tell me about Web services, and make it quick,” 06 March 2002. leview/429/1/61/2Phil Wainewright, “Web Services Infrastructure,” October 2002. f4

What are Web Services?A BT Conferencing white paperOffices worldwideThe services described in this publication are subject to availability and may be modified from time to time.Services and equipment are provided subject to British Telecommunications plc’s respective standard conditionsof contract. Nothing in this publication forms any part of any contract. British Telecommunications plc 2009.150 Newport Ave. Ext. Quincy, MA 02171 USADesigned by BT ConferencingUS-2009/09/01

BT Conferencing is the first organization to develop a Web service — named Conference Service — that enables a customer to create and manage video conference reservatio