CXF调用webservice客户端

使用cxf调用webservice客户端需要如下建单几步

1:创建一个Java工程

2:引入需要的jar包

3:写个测试类测试

1:创建java工程

在eclipc新建一个Java项目,如下图:

就是普通的Java工程,jdk可以是1.6/1.7/1.8----测试了没有问题

2:引入需要的jar包

引入jar是个问题,不同的版本需要的jar包不一样,这里使用的是2.7.12版本

这些jar去哪里找是个问题:去官网下载,可以下载不同的版本,新的/历史 版本都可以下载,下载后就能得到相应的jar

打开这个路径学习怎么下载需要的版本的jar:https://www.cnblogs.com/xueershewang/p/10484773.html

jar下载下来 按着第一步中图中的引入需要的jar , fastjson-1.1.32.jar 是阿里的一个json工具类,这个不用,cxf   lib文件夹里也没有

3:书写测试类

=============类的内容开始===========

 package testcxf;

import java.util.HashMap;
import java.util.Map;
import org.apache.cxf.endpoint.Client;
import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
import com.alibaba.fastjson.JSON;

public class test {
    public static void main(String[] args) {
        //发布的webservice的wsdl路径
        String url ="http://127.0.0.1:8080/testWebService?wsdl";
        //创建动态代理工厂
        JaxWsDynamicClientFactory jwdcf = JaxWsDynamicClientFactory.newInstance();
        //根据wsdl路径创建实例--(参数url是 webservice发布的 wsdl 地址)
        Client client = jwdcf.createClient(url);
         Map paremap = new HashMap();
        paremap.put("test", "test");    
        String json=JSON.toJSONString(paremap);
         //传参调用打印返回结果
         try {
             //入参是  webservice的方法名,和需要的参数,参数格式这里是个字符串,
             //传其他的格式的参数---需要百度下
             Object[] retObjects  = client.invoke("test", json);  
             System.out.println(retObjects[0]);
        } catch (Exception e) {
            e.printStackTrace();
        }    
    }
}

=======================类的内容结束======================

写完这个类,直接启动main方法就可以了

需要知道的是webservice的发布的wsdl地址和方法名,以及方法需要的入参

转载于:https://www.cnblogs.com/xueershewang/p/10494651.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值