程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> WTP1.0開發WebService之使用WSDL生成Service

WTP1.0開發WebService之使用WSDL生成Service

編輯:關於JAVA

1.確定安裝了Apache Tomcat(這裡使用Tomcat5.0),新建一個dynamic Web project取名為 AreaProj。

2.示例中使用的WSDL文檔。(該文檔定義了一個計算長方形面積的服務)

AreaService.wsdl

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://tempuri.org/AreaService/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="AreaService"
targetNamespace="http://tempuri.org/AreaService/">
  <wsdl:types>
<xsd:schema targetNamespace=http://tempuri.org/AreaService/
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <xsd:element name="area" type="xsd:float"/>
    <xsd:element name="parameters" type="tns:dimensions"/>
    <xsd:complexType name="dimensions">
      <xsd:sequence>
         <xsd:element name="width" type="xsd:float"></xsd:element>
         <xsd:element name="height" type="xsd:float"></xsd:element>
      </xsd:sequence>
    </xsd:complexType>
   </xsd:schema>
  </wsdl:types>
  <wsdl:message name="CalculateRectAreaResponse">
   <wsdl:part element="tns:area" name="area"/>
  </wsdl:message>
  <wsdl:message name="CalculateRectAreaRequest">
   <wsdl:part element="tns:parameters" name="parameters"/>
  </wsdl:message>
  <wsdl:portType name="AreaService">
   <wsdl:operation name="CalculateRectArea">
    <wsdl:input message="tns:CalculateRectAreaRequest"/>
    <wsdl:output message="tns:CalculateRectAreaResponse"/>
   </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="AreaServiceSOAP" type="tns:AreaService">
   <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
   <wsdl:operation name="CalculateRectArea">
    <soap:operation soapAction="http://tempuri.org/AreaService/NewOperation"/>
    <wsdl:input>
     <soap:body use="literal"/>
    </wsdl:input>
    <wsdl:output>
     <soap:body use="literal"/>
    </wsdl:output>
   </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="AreaService">
   <wsdl:port binding="tns:AreaServiceSOAP" name="AreaServiceSOAP">
    <soap:address location="http://tempuri.org"/>
   </wsdl:port>
  </wsdl:service>
</wsdl:definitions>

3.將AreaService.wsdl放在/WebContent下,鼠標右鍵選中該文件,選擇New-Other-WebService,配置如下。

4.一路Next,如果沒有啟動Tomcat,會提示Start Server。最後選擇Finish。

5.在/src下生成部分java文件,其中一個AreaServiceSOAPImpl.java。將其內容修改為如下所示。

6.在/WebContent/wsdl/下會生成AreaServiceSOAP.wsdl。鼠標右鍵選中該文件,選擇New-Other-WebService Client,配置如下。

7.點擊兩個Next後,到達Client環境配置。配置如下。

8.選擇Finish。出現如下畫面。

9.選擇calculateRectArea進行測試,計算長方形面積。測試結果如下。

10.查看傳遞的SOAP。

request部分:

response部分:

本文出自 “子 孑” 博客,請務必保留此出處http://zhangjunhd.blog.51cto.com/113473/21440

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved