| <?xml version="1.0" encoding="UTF-8"?> |
| <!DOCTYPE html |
| PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html lang="en-us" xml:lang="en-us"> |
| <head> |
| <!-- /******************************************************************************* |
| * Copyright (c) 2000, 2005 IBM Corporation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * IBM Corporation - initial API and implementation |
| *******************************************************************************/ --> |
| <link rel="stylesheet" type="text/css" href="../../org.eclipse.wst.doc.user/common.css" /> |
| |
| <title>Web services standards</title> |
| </head> |
| <body id="webservicesstandards"><a name="webservicesstandards"><!-- --></a> |
| <h1 class="topictitle1">Web services standards</h1> |
| <div><p>One of the key attributes of Internet standards is that they focus |
| on protocols and not on implementations. The Internet is composed of heterogeneous |
| technologies that successfully interoperate through shared protocols. This |
| prevents individual vendors from imposing a standard on the Internet. Open |
| Source software development plays a crucial role in preserving the interoperability |
| of vendor implementations of standards.</p> |
| <p>The following standards play key roles in Web services: Universal Description, |
| Discovery and Integration (UDDI), Web Services Description Language (WSDL), |
| Web Services Inspection Language (WSIL), Simple Object Access Protocol (SOAP) |
| and Web Services Interoperability (WS-I). The relationship between these standards |
| is described in Figure 2.</p> |
| <p>The UDDI specification defines open, platform-independent standards that |
| enable businesses to share information in a global business registry, discover |
| services on the registry, and define how they interact over the Internet. |
| For more information on UDDI, refer to <a href="http://www.uddi.org" target="_blank">www.uddi.org</a></p> |
| <p>WSIL is an XML-based open specification that defines a distributed service |
| discovery method that supplies references to service descriptions at the service |
| provider's point-of-offering, by specifying how to inspect a Web site for |
| available Web services. A WSIL document defines the locations on a Web |
| site where you can look for Web service descriptions. Since WSIL focuses |
| on distributed service discovery, the WSIL specification complements UDDI |
| by facilitating the discovery of services that are available on Web sites |
| that may not be listed yet in a UDDI registry. A separate topic in this |
| documentation discusses the <a href="cwsilud.html">Relationship between |
| UDDI and WSIL</a>. For more information on WSIL, refer to <a href="http://www-106.ibm.com/developerworks/webservices/library/ws-wsilspec.html" target="_blank"> www.ibm.com/developerworks/webservices/library/ws-wsilspec.html</a></p> |
| <p>WSDL is an XML-based open specification that describes the interfaces to |
| and instances of Web services on the network. It is extensible, so endpoints |
| can be described regardless of the message formats or network protocols that |
| are used to communicate. Businesses can make the WSDL documents for their |
| Web services available though UDDI, WSIL, or by broadcasting the URLs to their |
| WSDL via email or Web sites. WSDL is described as a separate topic in this |
| documentation. For more information on WSDL, refer to <a href="http://www.w3.org/TR/wsdl" target="_blank">www.w3.org/TR/wsdl</a></p> |
| <div class="p">SOAP is an XML-based standard for messaging over HTTP and other Internet |
| protocols. It is a lightweight protocol for the exchange of information in |
| a decentralized, distributed environment. It is based on XML and consists |
| of three parts:<ul><li>An envelope that defines a framework for describing what is in a message |
| and how to process it.</li> |
| <li>A set of encoding rules for expressing instances of application-defined |
| data types.</li> |
| <li>A convention for representing remote procedure calls and responses.</li> |
| </ul> |
| SOAP enables the binding and usage of discovered Web services by defining |
| a message path for routing messages. SOAP may be used to query UDDI for Web |
| services. For more information on SOAP, refer to <a href="http://www.w3.org/TR/SOAP" target="_blank">www.w3.org/TR/SOAP</a></div> |
| <p>Figure 2. Relationships between SOAP, UDDI, WSIL and WSDL.</p> |
| <p> <img src="../images/soapudws.gif" alt="Figure 2 illustrates the relationships between SOAP, UDDI, WSIL, and WSDL." /> </p> |
| <p>A service provider hosts a Web service and makes it accessible using protocols |
| such as SOAP/HTTP or SOAP/JMS. The Web service is described by a WSDL document |
| that is stored on the provider's server or in a special repository. The WSDL |
| document may be referenced by the UDDI business registry and WSIL documents. |
| These contain pointers to the Web service's WSDL files.</p> |
| <p>The WS-I Simple SOAP Binding Profile and WS-I Attachments Profile are outlines |
| of requirements to which WSDL and Web service protocol (SOAP/HTTP) traffic |
| must comply in order to claim WS-I conformance. The Web services WS-I validation |
| tools currently support WS-I Simple SOAP Binding Profile 1.0 and the Attachment |
| Profile 1.0. To view the specifications, refer to the WS-I Web site, and under |
| <span class="uicontrol">Resources</span> select <span class="uicontrol">Documentation</span>: <a href="http://www.ws-i.org" target="_blank">http://www.ws-i.org</a></p> |
| <div class="p">Several new Web services standards are also supported by these tools. These include:<dl><dt class="dlterm">JAX-RPC</dt> |
| <dd>JAX-RPC stands for Java¢ API for XML-based RPC, also known as |
| JSR 101. It is a specification that describes Java Application Programming Interfaces |
| (APIs) and conventions for building Web services and Web service clients that |
| use remote procedure calls (RPC) and XML. It standardizes the Java to |
| WSDL and WSDL to Java mappings, and provides the core APIs for developing |
| and deploying Web services and Web service clients on the Java platform. |
| For more information refer to the <a href="http://www.jcp.org/en/jsr/detail?id=101" target="_blank">official specifications</a>.</dd> |
| <dt class="dlterm">JSR-109 and JSR-921</dt> |
| <dd>JSR-109 and JSR-921 (Implementing Enterprise Web Services) define the |
| programming model and run-time architecture to deploy and look up Web services |
| in the J2EE environment; more specifically, in the Web, EJB, and Client Application |
| containers. One of its main goals is to ensure vendors' implementations interoperate. |
| For more information, refer to the official specifications: <ul><li><a href="http://www.jcp.org/en/jsr/detail?id=109" target="_blank">JSR-109</a></li> |
| <li><a href="http://www.jcp.org/en/jsr/detail?id=921" target="_blank">JSR-921</a></li> |
| </ul> |
| </dd> |
| <dt class="dlterm">WS-S</dt> |
| <dd>These tools support the OASIS Web Services Security 1.0 standard. For more information |
| on the various components of this standard, refer to:<ul><li><a href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0.pdf" target="_blank">Web Services Security: SOAP Message Security |
| V1.0</a> </li> |
| <li> <a href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0.pdf" target="_blank">Web Services Security: Username Token Profile |
| V1.0</a></li> |
| <li> <a href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0.pdf" target="_blank">Web Services Security: X.509 Token Profile V1.0</a></li> |
| </ul> |
| </dd> |
| </dl> |
| </div> |
| <p>Web services tooling supports the following specifications:</p> |
| |
| <div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr><th valign="top" width="47.73869346733669%" id="d0e125">Technology or specification</th> |
| <th valign="top" width="52.26130653266332%" id="d0e127">Version or level supported</th> |
| </tr> |
| </thead> |
| <tbody><tr><td colspan="2" valign="top" headers="d0e125 d0e127 "><strong>Transports</strong></td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">HTTP/HTTPS</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 ">v1.0 and v1.1</td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">JMS</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 "> </td> |
| </tr> |
| <tr><td colspan="2" valign="top" headers="d0e125 d0e127 "><strong>Messaging</strong></td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">SOAP specification</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 ">v1.1</td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">SOAP Attachements</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 "> </td> |
| </tr> |
| <tr><td colspan="2" valign="top" headers="d0e125 d0e127 "><strong>Description</strong></td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">UDDI</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 ">v2.0</td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">WSDL</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 ">v1.1</td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">WSIL</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 ">v1.0</td> |
| </tr> |
| <tr><td colspan="2" valign="top" headers="d0e125 d0e127 "><strong>Security</strong></td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">WS-Security</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 ">OASIS Standard 1.0</td> |
| </tr> |
| <tr><td colspan="2" valign="top" headers="d0e125 d0e127 "><strong>Ineroperability</strong></td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">WS-I Basic Profile</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 ">1.1.2</td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">WS-I Simple SOAP Binding Profile</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 ">1.0.3</td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">WS-I Attachments Profile</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 ">1.0</td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 "><strong>Other Standards</strong></td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 "> </td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">JAX-RPC</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 ">v1.0 for J2EE 1.3, v1.1 for J2EE 1.4</td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">JSR 109</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 ">J2EE 1.3</td> |
| </tr> |
| <tr><td valign="top" width="47.73869346733669%" headers="d0e125 ">JSR 921</td> |
| <td valign="top" width="52.26130653266332%" headers="d0e127 ">J2EE 1.4</td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| <div> |
| <ul class="ullinks"> |
| <li class="ulchildlink"><strong><a href="../concepts/cwsdl.html">Web Services Description Language (WSDL)</a></strong><br /> |
| Web Services Description Language (WSDL) is a standard specification |
| for describing networked, XML-based services. It provides a simple way for |
| service providers to describe the basic format of requests to their systems |
| regardless of the underlying run-time implementation.</li> |
| <li class="ulchildlink"><strong><a href="../concepts/csoap.html">Simple Object Access Protocol (SOAP)</a></strong><br /> |
| Simple Object Access Protocol (SOAP) is a lightweight protocol |
| for the exchange of information in a decentralized, distributed environment. |
| A SOAP message is a transmission of information from a sender to a receiver. |
| SOAP messages can be combined to perform request/response patterns. </li> |
| <li class="ulchildlink"><strong><a href="../../org.eclipse.jst.ws.consumption.ui.doc.user/concepts/cuddi.html">Universal Description, Discovery, and Integration (UDDI)</a></strong><br /> |
| </li> |
| <li class="ulchildlink"><strong><a href="../concepts/cwsil.html">Web Services Inspection Language (WSIL)</a></strong><br /> |
| Web Services Inspection Language (WSIL) is a service discovery |
| mechanism that is an alternative to UDDI as well as complementary to UDDI. |
| When you discover Web services with UDDI, you go to a centralized registry. |
| WSIL is an alternative approach to Web service discovery. WSIL allows |
| you to go directly to the service provider and ask for the services it provides.</li> |
| <li class="ulchildlink"><strong><a href="../concepts/cjaxrpc.html">JAX-RPC</a></strong><br /> |
| JAX-RPC stands for Java API for XML-based RPC, also known as |
| JSR 101. It is a specification that describes Java Application Programming Interfaces |
| (APIs) and conventions for building Web services and Web service clients that |
| use remote procedure calls (RPC) and XML. It standardizes the Java to |
| WSDL and WSDL to Java mappings, and provides the core APIs for developing |
| Web services and Web service clients on the Java platform. Often used in a distributed |
| client/server model, an RPC mechanism enables clients to execute procedures |
| on other systems.</li> |
| <li class="ulchildlink"><strong><a href="../concepts/cjsr109.html">JSR 109 and JSR 921- Implementing Enterprise Web services</a></strong><br /> |
| JSR 109 and JSR 921 (Implementing Enterprise Web Services) define |
| the programming model and run-time architecture to deploy and look up Web |
| services in the J2EE environment; more specifically, in the Web, EJB, and |
| Client Application containers. One of its main goals is to ensure vendors' |
| implementations interoperate.</li> |
| </ul> |
| |
| <div class="familylinks"> |
| <div class="parentlink"><strong>Parent topic:</strong> <a href="../concepts/cws.html" title="A Web service is a set of related application functions that can be programmatically invoked over the Internet. Businesses can dynamically mix and match Web services to perform complex transactions with minimal programming. Web services allow buyers and sellers all over the world to discover each other, connect dynamically, and execute transactions in real time with minimal human interaction.">Web services overview</a></div> |
| </div> |
| |
| <div class="linklist"><strong>Related Concepts</strong><br /> |
| |
| <div><a href="cws.html" title="A Web service is a set of related application functions that can be programmatically invoked over the Internet. Businesses can dynamically mix and match Web services to perform complex transactions with minimal programming. Web services allow buyers and sellers all over the world to discover each other, connect dynamically, and execute transactions in real time with minimal human interaction.">Web services overview</a></div> |
| <div><a href="cwsinwsa.html">Tools for Web services |
| development</a></div> |
| <div><a href="cwsiover.html" title="WS-I is an organization designed to promote Web service interoperability across platforms, operating systems, and programming languages.">Web services interoperability |
| (WS-I)</a></div></div> |
| |
| <div class="linklist"><strong>Related Tasks</strong><br /> |
| |
| </div> |
| </div></body> |
| </html> |