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

Posted long77

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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客户端动态调用服务端功能方法的主要内容,如果未能解决你的问题,请参考以下文章

如何用webservice从客户端发送一个xml给服务端接收并插入数据库

webservice -- cxf客户端调用axis2服务端

java调用java编写的WebService接口服务端收到的参数为空

webservice客户端调用服务端异常 —— 远程主机强迫关闭了一个现有的连接

如何使用soapUI模拟webservice客户端发送请求

C#中Winform动态调用Webservice的方法(转)