• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

        Develop WEB service on J2EE(網友翻譯)1

        Develop WEB service on J2EE(網友翻譯)1

        更新時間:2021-09-25 文章作者:未知 信息來源:網絡 閱讀次數:

        Developer's Guide to Building XML-based Web Services
        with the Java 2 Platform, Enterprise Edition (J2EE)


        I. 概要
        基于XML的Web服務是參照B2B通信協作模式制定的新的規范。它提供了概念上和結構上的,適用于各種不同平臺和產品的基礎。現在,開發者可以利用J2EE技術來開發基于XML的Web服務。他們可以利用現存的J2EE技術來開發完整的,遵從XML標準的,能完全共通的WEB服務。無需重新設計或者構造現有的J2EE系統,開發人員就可以構建復雜的強大的Web服務應用。
        II. 介紹
        Web 服務是一種可以接收從Internet或者Intranet上的其它系統中傳遞過來的請求,輕量級的獨立的通訊技術。這種技術允許網絡上的所有系統進行交互。隨著技術的發展,一個Web服務可以包含額外的指定功能并且可以在多個B2B應用中協作通訊。
        Web 服務正在不斷完善,并且以一種非常智能的動態的方法來進行。這些靈活的Web服務可以理解請求中上下文的關系,并且在每一個特定的情況下產生動態的結果。這些服務會根據用戶的身份,地點以及產生請求的原因來改變不同的處理,用以產生一個唯一的,定制的方案。這種協作機制對那些只對最終結果有興趣的用戶來說,是完全透明的。
        這種Web服務所遵循的XML標準可以增進事物通信的性能。開發人員將可以利用不同的平臺,產品和標準來實現很多種可能。通過這種標準,開發人員可以建立一個系統使他們的Web服務提供最大的協同工作的能力。
        這份白皮書描述了如何方便地利用Java和XML技術來實現Web服務構架。它說明 了Web服務中的每一個關鍵部分以及如何使他們結合在一起。你將會對基于XML的Web服務的結構以及如何與J2EE結合,有一個更加深入的了解
        我們從如何利用J2EE建立Web服務開始。這部分將使你對如何建立一個Web服務有一個了解。
        III. 總結
        一般來說,在不同的事務之間進行電子通信協作會有很多阻礙。全異的系統,安全限制和不相同的數據格式,導致很多B2B系統在他們自己的領域或者客戶群中形成唯一。Web服務將改變這一切,使不同的事務互相通信變為可能,值得注意的是,這會降低建立商業站點的開發和維護成本。
        在建立Web服務的時候,有三個主要步驟:
        1.建立客戶端聯接 為了允許Applets,Applications,商業合作伙伴,瀏覽器和PDAs 使用Web服務。
        2.實現Web服務 包括工作流,數據傳送,商業邏輯以及數據訪問。這些功能是隱藏在Web服務后,并且為客戶端工作的。
        3.聯接后臺系統 這個系統可能包括一個或多個數據庫,現存的企業信息系統,商業合作伙伴自己的系統或者Web服務,以及在多個系統中共享的數據。
        你可以利用J2EE來實現這三個目標。用J2EE開發Web服務基于以下兩個技術:
        XML 技術. 在Web服務中,XML 標準是非常重要的。XML是一種數據格式,它可以以一種連貫的方式來表現數據,并且可以在網絡中以點對點的形式傳送。這些不同的XML標準連同指定的處理方法是設計來支持特定的行為的。
        Java 技術. Developers開發人員利用 J2EE APIs 來創建事務和表現的邏輯,訪問XML文檔,以及對XML文檔進行操作。信任被證實可行的Java技術是非常重要的,因為它允許開發者利用現有的下部構造,在其上構建新的功能。開發者可以繼續利用J2EE的標準API以及各種優秀的組件來開發系統。現在,開發者可以利用J2EE中提供的Java API for XML Parsing (JAXP) 來開發Web服務,我們將在稍后介紹。這個新的APIs主要用來處理XML數據格式以及服務,將使開發變得更容易,效率更高。
        圖 1 表現了基于J2EE的Web服務的核心構架。請注意,很多APIs在這里并沒有全部表示出來,象用來解析或者傳送消息的。但是,那些基于J2EE的標準,協議以及主要的子系統都表示出來了。


        圖 1
        讓我們進一步看一下利用J2EE來創建Web服務的細節。



        IV. 客戶端聯接
        客戶端聯接是關于Web服務的使用者如何來使用你的系統。表格 1 顯示了三種主要使用系統的客戶。
        客戶類型樣例如何聯接
        商業合作伙伴代理商,客戶群基于XML的Web 服務技術 (SOAP, UDDI, WSDL, ebXML)
        瘦客戶端瀏覽器,PDAs,無線設備HTTP 協議
        胖客戶端應用小程序,應用程序,已經存在的系統。IIOP協議

        表格 1
        商業合作伙伴的聯接
        第一種訪問Web服務的客戶類型是商業合作伙伴。他們可能使用很多種類型的編程語言,中間件或者硬件。當他們訪問尼的系統的時候,Web服務要求返回一個XML文件。這個文件具有標準的標記來表示商業數據,并且允許不同的系統通過這個來交互。
        Java Servlets
        當一個商業合作伙伴向Web服務發布一個請求的時候,接收請求的是一個Java servlet. 這個Servlet是一個在管理容器中運行,負責接收請求和響應的Java對象。它可以以很多種協議返回請求結果,象HTTP, FTP或者POP。在這個例子中Servlet通常使用HTTP來響應請求,這樣的話,Web服務就可以利用HTTP來通過防火墻了。
        當一個請求到達J2EE Web服務的時候,以下操作會發生,見圖2
        1.Java servlet接收XML 文檔。
        2.Servlet 處理傳入的基于XML的請求
        3.Servlet調用一個或者多個Enterprise JavaBeans (EJB) 組件來處理數據。
        4.EJB組件進行他們自己的處理,可能會調用其他存在的系統。
        5.EJB 組件把結果返回給Servlet。
        6.Servlet 把結果匯集到XML文檔中。
        7.Servlet 把XML傳送到客戶端。
        圖 2
        為了實現商業合作伙伴的聯接,必須有一種方法來發布,描述,定位以及調用一個Web服務。我們現在來描述如何達到這個目的。
        UDDI
        在用戶能夠調用Web服務之前,必須確定這個服務內包含哪些商務方法,找到被調用的接口定義,還要在服務端來編制軟件。所以,我們需要一種方法來發布我們的Web服務。
        UDDI (Universal Description, Discovery, and Integration) 是一個主要針對Web服務供應商和使用者的新項目。UDDI 項目中的成員可以通過UDDI Business Registry (UBR) 來操作Web服務的調用,UBR是一個全球性的服務。Web服務供應商可以在UBR中描述并且注冊他們的服務。用戶可以在UBR中查找并定位那些他們需要的服務。 UDDI是一種根據描述文檔來引導系統查找相應服務的機制。UDDI包含標準的"白皮書"類型的商業查詢方式,"黃皮書"類型的局部查找,以及"綠皮書"類型的服務類型查找。"綠皮書"允許開發者精確查找符合服務類型的所有服務。(這一段翻的比較奇怪)
        UDDI利用SOAP消息機制(標準的XML/HTTP)來發布,編輯,瀏覽以及查找注冊信息。它采用XML格式來封裝各種不同類型的數據,并且發送到注冊中心或者由注冊中心來返回需要的數據。
        JAXR
        為了支持UDDI在Java平臺上的功能,Java APIs for XML Registries (JAXR)允許開發者來訪問注冊中心。值得注意的是,JAXR并不是建立Web服務必需的,你可以利用其他常用的XML APIs來直接集成這些協議。JAXR是一個方便的API,它提供了Java API來發布,查找以及編輯那些注冊信息。它的重點在于基于XML的B2B應用,復雜的地址本查找以及對XML消息訂閱的支持等Web服務。它也可以用來訪問其他類型的注冊中心,象ebXML注冊中心(稍候描述)。
        這些對Web服務的注冊信息進行的操作,可以使用當前的一些Web服務工具來完成(例如第三方的SOAP和ebXML消息工具)。另外,當JAXP提供了一致并具有針對性的API來完成這些操作,這將使開發變得更加容易。
        WSDL
        對于商業用戶來說,要找到一個自己需要使用的服務,他必須知道如何來調用。WSDL (Web Services Description Language) 規范是一個描述接口,語義以及Web服務為了響應請求需要經常處理的工作的XML文檔。這將使簡單地服務方便,快速地被描述和記錄。
        以下是一個WSDL的樣例:
        <?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>
        它包含了以下的關鍵信息:
        ·消息的描述和格式定義可以通過XML文檔中的<types>和<message> 標記來傳送。
        ·<portType> 標記中表示了消息傳送機制。 (e.g. request-only, request-response, response-only) 。
        ·<binding> 標記指定了編碼的規范 。
        ·<service> 標記中表示服務所處的位置 (URL)。
        WSDL在UDDI中總是作為一個接口描述文檔。因為UDDI是一個通用的用來注冊WSDL規范的地方,UDDI的規范并不限制任何類型或者格式描述文檔。這些文檔可能是一個WSDL文檔,或者是一個正規的包含導向文檔的Web頁面,也可能只是一個包含聯系信息的電子郵件地址。
        現在Java提供了一個 Java API for WSDL (JWSDL)規范。它提供了一套能快速處理WSDL文檔的方法,并且不用直接對XML文檔進行操作,它會比JAXP更方便,更快速。
        圖 3 顯示了如何使用WSDL 和 UDDI。

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統下載排行

        主站蜘蛛池模板: 伊在人亚洲香蕉精品区麻豆| 69视频在线观看高清免费| 毛片a级毛片免费播放下载| 91精品国产亚洲爽啪在线观看| 色播在线永久免费视频网站| 亚洲Av无码乱码在线znlu| 免费看一级高潮毛片| 亚洲国产成人久久精品99| 亚洲色图.com| 成人午夜免费福利视频| 成人免费一区二区三区| 国产情侣久久久久aⅴ免费| 国产精品免费久久久久电影网| 四虎影视在线看免费观看| 一本无码人妻在中文字幕免费| 99久久99这里只有免费费精品 | 国产亚洲精品线观看动态图| 国产一级一片免费播放i| 日韩一区二区三区免费体验| 成人免费a级毛片| 免费看大黄高清网站视频在线| 在线观看免费人成视频| 亚洲伊人久久大香线蕉综合图片| 亚洲精品伦理熟女国产一区二区| 精品亚洲成A人在线观看青青| 亚洲大香伊人蕉在人依线| 精品亚洲综合久久中文字幕| 亚洲精品亚洲人成在线观看| 日本久久久久亚洲中字幕| 亚洲区精品久久一区二区三区| 亚洲中文字幕无码久久2020| 老妇激情毛片免费| 国产精品亚洲综合网站| 特级一级毛片免费看| 亚洲免费在线观看视频| 国产传媒在线观看视频免费观看| 亚洲s色大片在线观看| 亚洲色无码专区一区| 午夜网站在线观看免费完整高清观看| 黄色免费网站网址| 成人性生交大片免费看午夜a|