IDEA java 调用 webservice接口

IDEA java 调用 webservice接口

示例:
再IDEA中新建一个maven工程
选中一个package点击Tools-WebServices-Generate java code from WSDL
在这里插入图片描述
在这里插入图片描述
参数说明:Web service WSDL URL可以是本地wsdl路径,也可以是网上已发布的WSDL路径;
例如:http://10.72.96.183:1111/demoSrv.asmx?WSDL
这个路径是我自己本地用VS2017发布的C#的webservice路径
在这里插入图片描述
或者本地wsdl文件:
在这里插入图片描述
这个文件的内容就是上面发布的wsdl
(我是将wsdl的内容拷贝粘到txt文件中,然后重新命名文件为wsdl)
Service Platfrom 选择 Glassfish / JAX-WS 2.2 RI /Metro 1.X /JWSDP 2.2

点击OK会自动下载wsdl的代码
在这里插入图片描述
这是下载后的wsdl代码。可以将.class文件删除。
在这里插入图片描述
这里主要注意接口以及接口的实现类。
DemoSrvSoap为接口,DemoSrv为该接口的实现类。

java调用方式:

创建一个测试类

public class Test {
    public static void main(String[] args) {
        try {
            URL url = new URL("http://10.72.96.183:1111/demoSrv.asmx?WSDL");
            DemoSrv demoSrv = new DemoSrv(url);
            DemoSrvSoap port = demoSrv.getPort(DemoSrvSoap.class);
            int result = port.add(2, 4);
            System.out.println("result = " + result);
        } catch (MalformedURLException e) {
            e.printStackTrace();
        }
    }
}

这里再调用的时候 new DemoSrv()使用了带参数url的构造方法。默认的构造方法有很多。下载下来的代码里已有URL,但是代码往往可能会在服务器上运行。或者开发时调用开发环境的wsdl,而上线时可能需要调用上线环境的wsdl。地址不一样。可以利用构造方法,如果是springboot,可以将地址配置再配置文件或者yml文件中,通过@Value注入wsdl的地址 或者通过配置类,这里就不在阐述了。

DemoSrv 实例创建后,调用getPort方法,参数为接口的class文件。
即 demoSrv.getPort(DemoSrvSoap.class); 返回port,可以通过prot调用webservice的方法。 port.add(1,2); 这里的add为webservice的方法,做了个简单的加法。

调用结果:在这里插入图片描述

该方式同样适用于java发布的webserviec接口。

  • 1
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值