zoukankan      html  css  js  c++  java
  • 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/h-c-g/articles/10882935.html    ---其他人写法

  • 相关阅读:
    bzoj 3709: [PA2014]Bohater【贪心】
    bzoj 3714: [PA2014]Kuglarz【最小生成树】
    bzoj 2216: [Poi2011]Lightning Conductor【决策单调性dp+分治】
    bzoj 2087: [Poi2010]Sheep【凸包+极角排序+dp】
    bzoj 3830: [Poi2014]Freight【dp】
    bzoj 3930: [CQOI2015]选数【快速幂+容斥】
    bzoj 1717: [Usaco2006 Dec]Milk Patterns 产奶的模式【后缀自动机】
    bzoj 1614: [Usaco2007 Jan]Telephone Lines架设电话线【二分+spfa】
    bzoj 1640||1692: [Usaco2007 Dec]队列变换【后缀数组】
    bzoj 1612: [Usaco2008 Jan]Cow Contest奶牛的比赛【Floyd】
  • 原文地址:https://www.cnblogs.com/xueershewang/p/10494651.html
Copyright © 2011-2022 走看看