首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

手把手教你用 MyEclipse 構建 WebService 服務端與客戶端完整實例

     編輯:Java 綜合教學

手把手教你用 MyEclipse 構建 WebService 完整實例

本教程基於 MyEclipse 10.7 + JDK 1.6 環境,詳細演示從創建項目、編寫服務、發布測試到生成客戶端調用的全流程,並總結常見坑點解決方案。

一、環境準備

  • MyEclipse 10.7.1
  • JDK 1.6.0_22 或更高(關鍵:必須 ≥ 1.6.0_17,否則編譯報錯)

二、創建服務端項目

  1. 新建 Web Service Project,命名 TheService。
  2. 創建包 com.hyan.service,新建類 ServiceHello。
  3. 編寫業務方法,例如:
public class ServiceHello {
    public String sayHello(String name) {
        return "Hello, " + name + "!";
    }
}
  1. 右鍵類 → Web Service → Publish Web Service,選擇 JAX-WS 引擎,完成發布。
  2. 驗證 WSDL:瀏覽器訪問 https://localhost:9001/Service/ServiceHello?wsdl,能看到 XML 定義即成功。

三、生成客戶端存根代碼

  1. 新建另一個 Web Service Project,命名 TheClient。
  2. 打開命令行,執行 wsimport 生成代碼:
wsimport -s G:\workspace\webService\TheClient\src -p com.hyan.client -keep https://localhost:9001/Service/ServiceHello?wsdl

參數說明:

  • -s:源碼輸出目錄(路徑不能包含空格)
  • -p:生成包名
  • -keep:保留 .java 源文件
  • 必須帶 ?wsdl 後綴,否則報 Could not find wsdl:service
  1. 刷新項目,確認 com.hyan.client 包下生成了 ServiceHello、ServiceHelloService 等類。

四、編寫客戶端測試類

package com.hyan.test;
import com.hyan.client.ServiceHello;
import com.hyan.client.ServiceHelloService;

public class ServiceTest {
    public static void main(String[] args) {
        ServiceHelloService factory = new ServiceHelloService();
        ServiceHello proxy = factory.getServiceHelloPort();
        System.out.println(proxy.sayHello("World"));
    }
}

五、常見坑點與解決方案總結

現象原因解決
編譯報 Wrapper class ... not foundJDK 版本 < 1.6.0_17項目右鍵 Properties → Java Build Path → Libraries 換高版本 JDK
directory not found 路徑含空格wsimport -s 路徑有空格移至無空格路徑或用雙引號包裹
Could not find wsdl:servicewsimport 命令缺 ?wsdl補全 WSDL 地址後綴

進階提示

  • 生產環境建議使用 Maven + jaxws-maven-plugin 自動化生成客戶端代碼。
  • WebService 互操作性較強,但傳輸效率不如 REST/JSON,內部微服務優先考慮 gRPC 或 Dubbo。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved