首页 > 代码库 > Webservice客户端动态调用服务端功能方法

Webservice客户端动态调用服务端功能方法

一、发布WebService服务
方式一:在服务端生成wsdl文件,下方客户端直接引用即可
 
  优点:针对要发布的方法生成一个wsdl文件即可,无需多余配置。
  缺点:每次服务端方法发生改变都需要重新生成相应的wsdl文件,不适合于功能需要经常变动的方法。
 
方式二:
 
二、Client调用服务端接口 
 
1、 项目架构如下:
技术分享 
2、调用过程:
1)右键点击项目名称——>“NEW”——>“Other”——>输入WEB service client 如下
 
技术分享 
2)完成出现客户端配置窗口,如下
 
技术分享 
3)在“service definition”中输入webservice开放的服务地址, 注意地址末尾必须加上“?WSDL”
 
还需注意的是,创建的web service client 必须是3.0以下版本。
 
4)这个项目中除了 TestClient.java类是自己创建的,其他都是自动生成的。
 
5)TestClient.java类
public static void main(String[] args) {
        try {
             HelloWorldServiceServiceLocator service = new HelloWorldServiceServiceLocator();
            java.net.URL url = new java.net.URL(" http://localhost:8080/mywebservices/services/HelloWorldService.jws?WSDL");
             HelloWorldServiceSoapBindingStub stub = new HelloWorldServiceSoapBindingStub(url, service);
            String x2 = stub.getMessage();
            System.out.println(x2);
 
            
        } catch (RemoteException e) {
            // TODO Auto-generated catch block20
            e.printStackTrace();
        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block23
            e.printStackTrace();
        }
    }
 
这里主要用到的是***Locator 和***Stub这两个类。

 

Webservice客户端动态调用服务端功能方法