敬的世界

          常用鏈接

          統計

          最新評論

          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)  編輯  收藏


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


          網站導航:
           
          主站蜘蛛池模板: 盈江县| 新建县| 乌鲁木齐县| 宿州市| 磐石市| 岐山县| 沛县| 阳新县| 行唐县| 吉水县| 华容县| 江北区| 宜川县| 清镇市| 靖边县| 扶风县| 全州县| 湘潭县| 潜山县| 龙井市| 滦平县| 北京市| 宜宾市| 长葛市| 开化县| 桃园市| 云南省| 张家港市| 镇江市| 武功县| 新民市| 筠连县| 石楼县| 钦州市| 邢台县| 邛崃市| 山阳县| 隆林| 鄂托克前旗| 宣汉县| 扶风县|