1 首先 下载 最新的 axis2-1.6.2-bin.zip 解压缩,使用命令行,切换 到 bin 目录 下,运行下面的命令。注意,如果 si_UpWeiboData_ob.wsdl 不在当前目录下,需要提供 si_UpWeiboData_ob.wsdl的物理路径。
wsdl2java -uri si_UpWeiboData_ob.wsdl -t
一个src目录
Si_UpWeiboData_obServiceStub.java 这个就是 服务的代理文件,其中会生成代理的方法
Si_UpWeiboData_obServiceCallbackHandler.java 这是异步调用的回调方法,如果需要进行异步调用的需要使用,这个类,如果不用异步方式的话,就不会用到这个类。Si_UpWeiboData_obServiceStub.java 中会生成两种调用方式的接口。根据需要进行选择。
一个test目录
这个就是生成的单元测试文件。里面会有两个测试方法。一个测试同步调用的方式,一个测试异步调用的方式。看如下代码的注释。
3,构造参数,传递数据,这一步也是最重要的异步。我生成的代码如下。注意看注释
/** * Auto generated test method */ public void testsi_UpWeiboData_ob() throws java.lang.Exception{ com.jahwa.pos.crm.Si_UpWeiboData_obServiceStub stub = new com.jahwa.pos.crm.Si_UpWeiboData_obServiceStub();//the default implementation should point to the right endpoint com.jahwa.pos.crm.Si_UpWeiboData_obServiceStub.Mt_UpWeiboData_req mt_UpWeiboData_req4= (com.jahwa.pos.crm.Si_UpWeiboData_obServiceStub.Mt_UpWeiboData_req)getTestObject(com.jahwa.pos.crm.Si_UpWeiboData_obServiceStub.Mt_UpWeiboData_req.class); //Todo : Fill in the mt_UpWeiboData_req4 here //下面这个地方就是,我们要填充自定义代码的地方,在这里我们要按照要求,构建自己的数据。最后构建成一个 mt_UpWeiboData_req4 HttpJsonGet hjg = new HttpJsonGet("GET","","http://v3.unotice.cn/webservice/client/get_weibo_list",1); JSONArray weiboArray = hjg.getResult(); I_ZCRMT_ARTICLE_type0 article = new I_ZCRMT_ARTICLE_type0(); I_ZCRMT_WEIBO_type0 weibo = new I_ZCRMT_WEIBO_type0(); for(int i=0;i<2;i++){ Item_type0 item0 = new Item_type0(); item0.setZID(weiboArray.getJSONObject(i).getString("ZID")); item0.setZTEXT(weiboArray.getJSONObject(i).getString("ZTEXT")); weibo.addItem(item0); } HttpJsonGet wenzhang = new HttpJsonGet("GET","http://v3.unotice.cn/webservice/client/get_article_list",1); JSONArray wenzhangArray = wenzhang.getResult(); for(int i=0;i<2;i++){ Item_type1 item1 = new Item_type1(); item1.setZID(weiboArray.getJSONObject(i).getString("ZID")); item1.setZARTICLE_TYPE(weiboArray.getJSONObject(i).getString("ZID")); article.addItem(item1); } //注意这个地方,必须用这个方法,进行设置,它会把 localItemTracker 设置 为ture,这样才会把数据序列化进行传输。否者不会传输这个字段。 dur.setI_ZCRMT_ARTICLE(article); dur.setI_ZCRMT_WEIBO(weibo); mt_UpWeiboData_req4.setMt_UpWeiboData_req(dur); //发送数据,实际调用代理方法,这个是同步调用方式,所以可以立刻返回结果。 stub.si_UpWeiboData_ob(mt_UpWeiboData_req4); }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。