WEB开发网
开发学院软件开发Java JAX-RPC 与 JAX-WS 的比较,第 4 部分:动态调用接... 阅读

JAX-RPC 与 JAX-WS 的比较,第 4 部分:动态调用接口

 2009-11-03 00:00:00 来源:WEB开发网   
核心提示:引言JAX-RPC 1.1 和 JAX-WS 2.0 客户机动态模型都提供一组类似的抽象步骤来进行调用,定义服务,JAX-RPC 与 JAX-WS 的比较,第 4 部分:动态调用接口,从此服务创建动态调用对象,构建消息,我们将使用前一篇文章中所用的 HelloWorld Web 服务描述语言(Web Services

引言

JAX-RPC 1.1 和 JAX-WS 2.0 客户机动态模型都提供一组类似的抽象步骤来进行调用。

定义服务。

从此服务创建动态调用对象。

构建消息。

调用操作。

尽管这两个模型都采用相同的步骤,不过本文将说明两个模型间细节的差异。我们将使用前一篇文章中所用的 HelloWorld Web 服务描述语言(Web Services Description Language,WSDL)。具体如清单 1 中所示。


清单 1. HelloWorld 服务的 WSDL

        <?xml version="1.0" encoding="UTF-8"?> 
   <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
   xmlns:tns="urn:helloWorld/sample/ibm/com" 
   xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
   xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="HelloWorld" 
   targetNamespace="urn:helloWorld/sample/ibm/com"> 
 <wsdl:types> 
  <xsd:schema targetNamespace="urn:helloWorld/sample/ibm/com" 
    xmlns:tns="urn:helloWorld/sample/ibm/com" 
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
   <xsd:element name="hello"> 
    <xsd:complexType> 
     <xsd:sequence> 
      <xsd:element name="name" nillable="true" type="xsd:string" /> 
     </xsd:sequence> 
    </xsd:complexType> 
   </xsd:element> 
   <xsd:element name="helloResponse"> 
    <xsd:complexType> 
     <xsd:sequence> 
      <xsd:element name="response" nillable="true" type="xsd:string" /> 
     </xsd:sequence> 
    </xsd:complexType> 
   </xsd:element> 
  </xsd:schema> 
 </wsdl:types> 
 <wsdl:message name="helloRequestMsg"> 
  <wsdl:part element="tns:hello" name="helloParameters" /> 
 </wsdl:message> 
 <wsdl:message name="helloResponseMsg"> 
  <wsdl:part element="tns:helloResponse" name="helloResult" /> 
 </wsdl:message> 
 <wsdl:portType name="HelloWorld"> 
  <wsdl:operation name="hello"> 
   <wsdl:input message="tns:helloRequestMsg" name="helloRequest" /> 
   <wsdl:output message="tns:helloResponseMsg" name="helloResponse" /> 
  </wsdl:operation> 
 </wsdl:portType> 
 <wsdl:binding name="HelloWorldBinding" type="tns:HelloWorld"> 
  <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> 
  <wsdl:operation name="hello"> 
   <soap:operation soapAction="urn:helloWorld/sample/ibm/com/hello" /> 
   <wsdl:input name="helloRequest"> 
    <soap:body use="literal" /> 
   </wsdl:input> 
   <wsdl:output name="helloResponse"> 
    <soap:body use="literal" /> 
   </wsdl:output> 
  </wsdl:operation> 
 </wsdl:binding> 
 <wsdl:service name="HelloWorldService"> 
  <wsdl:port name="port" binding="tns:HelloWorldBinding"> 
   <soap:address location="http://tempuri.org/" /> 
  </wsdl:port> 
 </wsdl:service> 
 </wsdl:definitions>

1 2 3 4  下一页

Tags:JAX RPC JAX

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接