Docstoc

Web Services

Document Sample
Web Services Powered By Docstoc
					   Web Services
       Introductory Talk



An Introduction to Web Services


Prepared By: Jared A. Zebedee
   Thurs. February 26, 2004
                Web Services
                       Outline



•   Definition
•   History (Motivation)
•   “What are Web Services?”
•   Benefits
•   Technologies/Protocols
•   How Web Services Work
•   Applications
•   Implementations
•   Our Plans
                Web Services
                      Definition



“The World Wide Web is more and more used for
  application to application communication. The
  programmatic interfaces made available are referred
  to as Web Services.” – W3C, 2002
                Web Services


•   Definition
•   History (Motivation)
•   “What are Web Services?”
•   Benefits
•   Technologies/Protocols
•   How Web Services Work
•   Applications
•   Implementations
•   Our Plans
                           Web Services
                              History (Motivation)
Developers needed ways to exchange information between applications that were often
running in different locations, and under incompatible platforms/languages/systems.

  - Before Web Services, EAI (Enterprise Application Integration) was used instead.
  - Developers created one-time, proprietary solutions for system integration.
  - A new customized solution had to be created for each situation.
  Enter XML (Extensible Markup Language):
  - Allowed developers to separate content from presentation
  -Allowed data to be more easily exchanged between humans and between computers
  -Public format (standard; it doesn’t belong to any particular company)


  -XML helped to simplify the EAI process.

  -Web Services are the next step; they
  use XML to replace the EAI method.
                Web Services


•   Definition
•   History (Motivation)
•   “What are Web Services?”
•   Benefits
•   Technologies/Protocols
•   How Web Services Work
•   Applications
•   Implementations
•   Our Plans
                    Web Services
                   “What are Web Services?”


Web Services are modular, self-describing, self-contained
applications that are accessible over the Internet.

   -Based on Open Standards
   -Language/Object Model/Platform Independent
                Web Services


•   Definition
•   History (Motivation)
•   “What are Web Services?”
•   Benefits
•   Technologies/Protocols
•   How Web Services Work
•   Applications
•   Implementations
•   Our Plans
                             Web Services
                                       Benefits
-Interoperable:
XML standard allows applications on any platform to communicate with other
Web services applications. While other factors may change, the Web Services
interface remains accessible.

-Easy to use:
As long as they adhere to Web Services standards, developers are free to use their
own programming language, architecture, implementation strategy and
so forth.

-Reusable:
Web services are component based, allowing interfaces with potentially
unlimited sources.

-Ubiquitous:
Web Services are accessible everywhere because they use the Internet.
An added advantage is that they have been developed to comply with
existing Internet-based security measures (such as firewalls).
                Web Services


•   Definition
•   History (Motivation)
•   “What are Web Services?”
•   Benefits
•   Technologies/Protocols
•   How Web Services Work
•   Applications
•   Implementations
•   Our Plans
                          Web Services
                           Technologies/Protocols

“Web Services allow any piece of software to
communicate with a standard XML messaging system.”



The following XML-based technologies form the Web Services Architecture:
 -WSDL (Web Services Description Language)
 -SOAP (Simple Object Access Protocol)
 -UDDI (Universal Description, Discovery, and Integration)
 -XSLT (Extensible Stylesheet Language Transformations)
                          Web Services
                   Technologies/Protocols (continued)

WSDL
 Web Services Description Language (WSDL) is an
 XML-based format for specifying the interface to a Web
 Service. The WSDL details the service's available methods
 and parameter types, as well as the actual SOAP endpoint
 for the service. In essence, WSDL is the "user's manual" for
 the Web Service.




SOAP
SOAP is an XML-based protocol for exchanging information in a
decentralized, distributed environment. It defines a mechanism to
pass commands and parameters between clients and servers. Like
Web Services as a whole, SOAP is independent of the platform,
object model, and programming language being used.
                           Web Services
                    Technologies/Protocols (continued)

UDDI
 UDDI is the meeting place for Web Services. The UDDI
 registry stores descriptions about companies and the
 services they offer in a common XML format. As such,
 the UDDI is effectively a "yellow pages" for Web
 Services.




XSLT
 XSLT is a language to transform one XML document into another XML
 document. Because a variety of XML “dialects” (such as RosettaNet,
 BASDA, ebXML, and so on) exist today, XSLT is very useful to translate
 one format into another. Since WSDL is based on XML, it is also
 possible to translate between XML Schema and WSDL. Thus, XSLT is
 particularly useful to link XML-based systems and Web Services
 applications in a standards-based way.
                Web Services


•   Definition
•   History (Motivation)
•   “What are Web Services?”
•   Benefits
•   Technologies/Protocols
•   How Web Services Work
•   Applications
•   Implementations
•   Our Plans
               Web Services
               How Web Services Work


Web Services are the building blocks for creating
distributed applications that can be published and
accessed over the Internet and corporate intranets.
Based on open standards, Web Services enable you to
construct applications using any hardware platform,
programming model, or language.

Thus, you can build a Java-based Web Service on
Solaris that is accessible from your Visual Basic
program running on Windows. Or you can use C# to
build new Web Services on Windows that can be
invoked from your JSP-based Web applications running
on Linux.
                             Web Services
                  How Web Services Work (continued)
Example




  1. Client application bundles account registration information into a SOAP message.

  2. SOAP message is sent to the Web Service via an HTTP POST request.

  3. Web Service unpacks the SOAP request and converts it into a command that the application can
  understand. The application processes the information as required and responds with a new unique
  account number for that customer.

  4. Web Service packages up its response into another SOAP message, and sends it back to the client as
  its response to the HTTP request.

  5. The client program unpacks the SOAP message to obtain the results of the account registration
  process.
                Web Services


•   Definition
•   History (Motivation)
•   “What are Web Services?”
•   Benefits
•   Technologies/Protocols
•   How Web Services Work
•   Applications
•   Implementations
•   Our Plans
                                 Web Services
                                          Applications



Amazon Web Services offer applications that range from retrieving information about a set of
products to adding an item to a shopping cart. You can access Amazon Web Services through
an XML over HTTP or a SOAP interface.

 XML and SOAP allow you to retrieve product information directly from Amazon’s servers on a
 daily basis and format the information any way you'd like for your own Web site.




With the Google Web APIs service, software developers can query more than 3 billion web documents
directly from their own computer programs. Google uses the SOAP and WSDL standards so a
developer can program in his or her favorite environment - such as Java, Perl, or Visual Studio .NET.
                Web Services


•   Definition
•   History (Motivation)
•   “What are Web Services?”
•   Benefits
•   Technologies/Protocols
•   How Web Services Work
•   Applications
•   Implementations
•   Our Plans
                  Web Services
                      Implementations




 - Microsoft’s Spin on Web Services
 http://www.microsoft.com/net




- Sun’s implementation
http://java.sun.com/webservices/index.jsp
                Web Services


•   Definition
•   History (Motivation)
•   “What are Web Services?”
•   Benefits
•   Technologies/Protocols
•   How Web Services Work
•   Applications
•   Implementations
•   Our Plans
                               Web Services
                                         Our Plans

                     Queen’s Database Systems Laboratory

                          Web Services Research Project

- Create a prototype Web Services implementation in the form of a dynamic
content service.

- Investigate how key principles and techniques for self-management can be
integrated into a framework for building self-managing Web Services.

- Look at how properties such as adaptability, self-awareness and self-
optimization can be incorporated into Web Services.

- Apply principles of reflective systems and reflective programming to the
development of Web Services.
                                        Web Services
                                                   References
Web Services Introduction
http://www.capeclear.com/products/webservices/index.shtml

Web Services Primer
http://www.capescience.com/education/primer/index.shtml

XML Introduction
http://hotwired.lycos.com/webmonkey/98/41/index1a.html

Using Web Services to Drive the Next Generation of Applications
http://www.wrq.com/products/whitepapers/web_services/

Web Services (WWW consortium)
http://www.w3.org/2002/ws/

Amazon Web Services
http://associates.amazon.com/exec/panama/associates/join/developer/faq.html/086-6260575-7299455

Google Web APIs
http://www.google.com/apis/

Microsoft .NET
http://www.microsoft.com/net

Java Technology and Web Services
http://java.sun.com/webservices/index.jsp
Web Services
     Fin




   Questions

				
DOCUMENT INFO