WSDL:
實作伺服器端
- 定義介面(interface):以circleareaws做為介面package circleareaws; <br> public interface CircleArea { <br> public double setRidus(int r); //輸入半徑值及預設傳回double值的結果 <br> } <br>
- 將此介面轉換成 WSDL
java org.apache.axis.wsdl.Java2WSDL -o ca.wsdl -l "http://127.0.0.1:8080/axis/services/CircleArea" -n "urn:circleareaws" -p"circleareaws" "urn:circleareaws" circleareaws.CircleArea - 產生伺服器端所需要之檔案
java org.apache.axis.wsdl.WSDL2Java -o . -d Application -s -S true -Nurn:circleareaws circleareaws.CircleArea ca.wsdl - 校定 ***Impl 類別中的程式碼。
- 將該服務部署(develop)到Tomcat 伺服器
java org.apache.axis.client.AdminClient deploy.wsdd - 將編譯過的class檔案複製到 Tomcat 之 webapps\axis\WEB-INF\classes 目錄。
- 測試部署是否成功
http://localhost:8080/axis/services/CircleArea
實作WSDL:客戶端測試
- 建立一個新目錄 test3
- copy 之前所產生之 ca.wsdl 至 test3
- 執行:(會自動產生jUnit的test case,所以要下載 JUnit)
java org.apache.axis.wsdl.WSDL2Java -t ca.wsdl - 修改 CircleAreaServiceTestCase.java 中的程式碼 (還要自己新增 main()),才可以測試。
小結:
- 根據實作經驗知道,只要有一個網路服務的 WSDL 檔(此WSDL檔是從網路上某個伺服器中所下載的檔案),我們就可以根據此WSDL檔來產生所需要之Java 客戶端程式
- 氣象預報 Web Service (http://www.webservicex.net/WeatherForecast.asmx),並實作程式來取得氣象資料
- W3C School - WSDL 教學
- WSDL Tutorial (PPT)WSDL教學文件。
- WSDL Essentials
- Web Service Description Language (WSDL) 1.1 規格
- Web Service Description Working Group - Web Service Description Language (WSDL) 2.0 規格。
- WebServiceStudio 2.0 這是一個以C#語言開發的 WSDL 測試工具。系統必須要有安裝 Microsoft .NET Framework Version 1.1 Redistributable Package 才可以執行。
- Apache Axis 1.x版。下載Apache Axis 1.4 Final版,並安裝於Tomcat server 下。
- CLASSPATH設定:(請記得修改成自己的安裝路徑)
CLASSPATH=%CLASSPATH%;d:\axis-1_4\lib\axis.jar;d:\axis-1_4\lib\axis-ant.jar;d:\axis-1_4\lib\jaxrpc.jar;d:\asix-1_4\lib\log4j-1.2.8.jar;d:\axis-1_4\lib\wsdl4j-1.5.1.jar;d:\axis-1_4\lib\commons-logging-1.0.4.jar;d:\axis-1_4\lib\commons-discovery-0.2.jar;d:\asix-1_4\lib\saaj.jar;d:\soap-2_3_1\lib\soap.jar;
全站熱搜
留言列表