敬的世界

          常用鏈接

          統計

          最新評論

          Web Service

          Web Service 服務接口需要綁定具體實現服務的服務組件來實現服務, 他對具體的服務實現完成了封裝,實現了服務的透明化,客戶端不需要知道服務是如何實現的,但是Web Service 組件本身是知道服務是如何實現的, 另外客戶端調用Web Service組件時, 需要知道Web Service 的具體位置和傳輸協議, 這些都會造成一定的不靈活性, 它只是實現了一定程度上的抽象。

          Web Service 服務接口綁定.jpg

          The basic Web Service platform is XML + HTTP.

          XML provides a language which can be used between different platforms and programming languages and still express complex messages and functions.

          Web Services platform elements:

          • SOAP (Simple Object Access Protocol)
          • UDDI (Universal Description, Discovery and Integration)
          • WSDL (Web Services Description Language)

          Web Services have two types of Uses

          ???Resuable application components

          Web Services can offer applications components like currency conversion, weather reports, or even language translation as service

          Connect existing software

          Web services help to solve the interoperability problem by giving different applications a way to link their data

          With Web Services you can exchange data between different applications and different platforms.

          WSDL( Web Service Description Language)

          A WSDL document defines services as collections of network endpoints, or ports. In WSDL, the abstract definition of endpoints and messages is separated from their concrete network deployment or data format bindings. This allows the reuse of abstract definitions: messages, which are abstract descriptions of the data being exchanged, and port types which are abstract collections of operations. The concrete protocol and data format specifications for a particular port type constitutes a reusable binding. A port is defined by associating a network address with a reusable binding, and a collection of ports define a service. Hence, a WSDL document uses the following elements in the definition of network services:

          • Types– a container for data type definitions using some type system (such as XSD).
          • Message– an abstract, typed definition of the data being communicated.
          • Operation– an abstract description of an action supported by the service.
          • Port Type–an abstract set of operations supported by one or more endpoints.
          • Binding– a concrete protocol and data format specification for a particular port type.
          • Port– a single endpoint defined as a combination of a binding and a network address.
          • Service– a collection of related endpoints.

          Example 1 SOAP 1.1 Request/Response via HTTP

          <?xml version="1.0"?>
          <definitions name="StockQuote"
          
          targetNamespace="http://example.com/stockquote.wsdl"
                    xmlns:tns="http://example.com/stockquote.wsdl"
                    xmlns:xsd1="http://example.com/stockquote.xsd"
                    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
                    xmlns="http://schemas.xmlsoap.org/wsdl/">
          
              <types>
                 <schema targetNamespace="http://example.com/stockquote.xsd"
                        xmlns="http://www.w3.org/2000/10/XMLSchema">
                     <element name="TradePriceRequest">
                        <complexType>
                            <all>
                                <element name="tickerSymbol" type="string"/>
                            </all>
                        </complexType>
                     </element>
                     <element name="TradePrice">
                        <complexType>
                            <all>
                                <element name="price" type="float"/>
                            </all>
                        </complexType>
                     </element>
                 </schema>
              </types>
          
              <message name="GetLastTradePriceInput">
                  <part name="body" element="xsd1:TradePriceRequest"/>
              </message>
          
              <message name="GetLastTradePriceOutput">
                  <part name="body" element="xsd1:TradePrice"/>
              </message>
          
              <portType name="StockQuotePortType">
                  <operation name="GetLastTradePrice">
                     <input message="tns:GetLastTradePriceInput"/>
                     <output message="tns:GetLastTradePriceOutput"/>
                  </operation>
              </portType>
          
              <binding name="StockQuoteSoapBinding" type="tns:StockQuotePortType">
                  <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
                  <operation name="GetLastTradePrice">
                     <soap:operation soapAction="http://example.com/GetLastTradePrice"/>
                     <input>
                         <soap:body use="literal"/>
                     </input>
                     <output>
                         <soap:body use="literal"/>
                     </output>
                  </operation>
              </binding>
          
              <service name="StockQuoteService">
                  <documentation>My first service</documentation>
                  <port name="StockQuotePort" binding="tns:StockQuoteBinding">
                     <soap:address location="http://example.com/stockquote"/>
                  </port>
              </service>
          
          </definitions>
          


          ?

          posted on 2008-10-04 06:06 picture talk 閱讀(151) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 龙岩市| 荔波县| 厦门市| 平武县| 磐石市| 班戈县| 哈尔滨市| 绿春县| 尉犁县| 平武县| 林甸县| 余江县| 福安市| 衡南县| 钟山县| 通海县| 绥江县| 昭通市| 平阴县| 樟树市| 左云县| 曲周县| 盐亭县| 彭泽县| 安平县| 大竹县| 巴林左旗| 千阳县| 汝州市| 祁门县| 英吉沙县| 紫金县| 庆城县| 长宁区| 双桥区| 彰化县| 常州市| 金华市| 日照市| 天门市| 思南县|