1. 程式人生 > >Java WebService 簡單實例[轉載]

Java WebService 簡單實例[轉載]

rect service provide bsp pro direct 解決 測試 com

一、準備工作(以下為本實例使用工具)

1、MyEclipse10.7.1

2、JDK 1.6.0_22

二、創建服務端

1、創建【Web Service Project】,命名為【TheService】。





2、創建【Class】類,命名為【ServiceHello】,位於【com.hyan.service】包下。





3、編寫供客戶端調用的方法,即編譯方法代碼。



4、進行編譯

說明:編譯失敗的話,請將該項目引用的jdk設置為1.6.0_17版本或更高版本





5、測試結果

測試地址:http://localhost:9001/Service/ServiceHello?wsdl



三、生成客戶端

1、創建【Web Service Project】,命名為【TheClient】。







2、命令提示窗口執行生成命令。

格式:wsimport -s "src目錄" -p “生成類所在包名” -keep “wsdl發布地址”

示例:

wsimport -s G:\\workspace\\webService\\TheClient\\src -p com.hyan.client -keep http://localhost:9001/Service/ServiceHello?wsdl

說明:

1)"src目錄"地址不可含空格

2)“wsdl發布地址”不要漏了“?wsdl”



3、刷新項目,檢查生成類






四、最終測試

1、創建【Class】類,命名為【ServiceTest】,位於【com.hyan.test】包下。







2、編寫測試方法,調用服務端方法,並打印返回的結果。





五、註意事項

1、JDK版本過低問題

報類似如下的異常:runtime modeler error: Wrapper class com.hyan.service.jaxws.GetValue is not found. Have you run APT to generate them?



原因:JDK版本低於1.6.0_17

解決方法:調整該服務端項目所引用的JDK版本為安裝的高版本JDK























2、生成命令路徑含空格問題

報類似如下的異常:directory not found: G:\SVN_FILE\GB\05



原因:客戶端src路徑不可含有空格

解決方法:在不含空格路徑的文件夾下重新創建客戶端即可。

3、生成命令不完整問題

報類似如下的異常:[ERROR] failed.noservice=Could not find wsdl:service in the provided WSDL(s):



原因:生成命令末尾缺少“?wsdl”

解決方法:補上即可。

錯誤不完整的命令示例:

wsimport -s G:\\workspace\\webService\\TheClient\\src -p com.hyan.client -keep http://localhost:9001/Service/ServiceHello

正確完整的命令示例:

wsimport -s G:\\workspace\\webService\\TheClient\\src -p com.hyan.client -keep http://localhost:9001/Service/ServiceHello?wsdl

Java WebService 簡單實例[轉載]