用Java客戶機調用Web服務: J2SE和J2EE環境中Web服務客戶機簡介

來源:互聯網
上載者:User

Web 服務的力量在於互通性。由於業界在 Web 服務技術方面(SOAP、WSDL、UDDI)的協作,更具體地說,是由於 Web 服務互通性組織(Web Services Interoperability organization,WS-I.org)的工作,Web 服務才可以與其他的 Web 服務進行互動,而不管 Web 服務開發和運行在哪一個平台上(比如是 Microsoft .NET 還是 IBM WebSphere)。Web 服務客戶機分為多種類型,比如另一個 Web 服務、用指令碼語言編寫的客戶機、C# 客戶機、Java 客戶機等等。本文重點講解 Java 客戶機,它可以用於訪問任何遵循 Web 服務規範的 Web 服務(不僅僅是 Java Web 服務)。通過閱讀本文,您將瞭解到需要用來通過不同的尋找和存取方法調用相同的 Web 服務的 Web 服務客戶機代碼。本文所用的樣本是“Hello” Web 服務,它提供了“getGreeting”操作。這種操作接受一個字串參數(例如Jane),然後返回一句問候語“Hello Jane!”。

Web 服務角色

這一部分將描述調用 Web 服務的過程。Web 服務提供者用 Web 服務描述語言(Web Services Description Language,WSDL)文檔來描述 Web 服務。Web 服務一般發布到統一描述、發現和整合(Universal Description, Discovery and Integration,UDDI)註冊中心。Web 服務要求者在 UDDI 註冊中心尋找 Web 服務,綁定到 Web 服務,然後調用它。Web 服務角色顯示在 圖1中。本文將重點講解從服務要求者到服務提供者的水平箭頭(綁定)。本文將把要求者稱為 客戶機,它也可以稱為 消費者。

用於

Java 技術標準的開發隨著 Java 規範提案(Java Specification Request,JSR)提交給Java Community Process(JCP)而出現。兩個 JSR 涵蓋了 Java Web 服務體繫結構:

JSR 101: 用於基於 XML 的 RPC 的 Java API(Java API for XML based RPC,JAX-RPC)

JSR 109: 實現企業 Web 服務(Implementing Enterprise Web services)

兩個規範提供了廠商的實現的一致性和互通性需求。

JAX-RPC —— Java 到 XML 和 XML 到 Java 映射 API

JAX-RPC 為基於 XML 的遠端程序呼叫(Remote Procedure Call,RPC)和 Java API(Java Application Programming Interface,API):

WSDL 到 Java 和 Java 到 WSDL 映射:例如,將 WSDL 連接埠類型映射到 Java 服務端點介面(Java Service Endpoint Interface,SEI)。

XML 資料類型到 Java 資料類型和 Java 資料類型到 XML 資料類型映射,包括簡單類型、複雜類型和數組。

除了 XML 映射之外,JAX-RPC 還定義了伺服器端編程模型和 API,我將在後面的部分中更詳細地介紹它。AX-RPC 1.1 根據 Web 服務互通性組織(Web Services Interoperability organization,WS-I)基本概要版本 1.0(Basic Profile version 1.0)添加了互通性需求。

JSR 109 —— J2EE 環境的 API

JSR 109 指定了 Java 2 Enterprise Edition(J2EE)環境的 Web 服務編程模型和體繫結構。JSR 109 構建在 SOAP 1.1 和 WSDL 1.1 的基礎上,它涵蓋了 J2EE 環境中 JAX-RPC 的使用( 圖 2)。它還定義了 J2EE 應用程式伺服器中的部署模型。JSR 109 的用戶端編程模型(我將在下面的幾個部分中介紹)符合 JAX-RPC。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.