wcf接口是由.net提供的webservice接口,一般是使用wsdl文件的样式发布,在wsdl文件中,包含该webservice暴露在外面可供使用的接口。

了解到的调用wfc接口方法有三种:

AXIS调用远程webservice

SOAP调用远程webservice

wsimport生成java代码,调用接口

在尝试方法1、2多次失败后,果断放弃,选择了简单易上手的方法3。通过jdk6.0以上版本自带的wsimport工具,即可根据wsdl文件生成相应的类文件。将这些生成的文件放在相应项目,就可以像调用本地的类一样调用webservice提供给的方法了。

具体步骤:

1、通过wsimport命令生成java代码,命令如下

wsimport 'http://XXX/BaseInfoService.svc?wsdl' -s /XXX/proxy/source -d /XXX/proxy/class -p proxy

-d:指定.class文件的输出目录

-s:指定.java文件的输出目录

-p:定义生成类的包名,不定义的话有默认包名

2、将生成文件放到项目中,创建调用类

public class TestWsimport{

public Map push(ParamDTO params) {

BaseInfoService client = new BaseInfoService();

// 将接口参数封装在ParamDTO中,代码更简洁

String requestInputStream = JSON.toJSONString(params);

String resultStr = client.getBasicHttpBindingIBaseInfoService()

//需要调用的方法

.sendParams(requestInputStream);

JSONObject resultObj = JSON.parseObject(resultStr);

Integer success = resultObj.getInteger("Success");

if (success == 0) {

Map errorMap = Maps.newConcurrentMap();

String errorDesc = resultObj.getString("Body");

errorMap.put(clueInfo.getRequestObjectList().get(0).getClueCode(), errorDesc);

return errorMap;

}

return null;

}

}

示例接口较简单,只需要发送数据。不同的webservice接口生成的代码会有出入,调用接口的代码需要根据实际情况进行调整。

java wsimport 调用_java使用wsimport调用wcf接口相关推荐

  1. java wsimport 调用_java – 使用wsimport时的安全性异常

    我想从wsdl文件生成存根文件,该文件可通过带有自签名证书的ssl连接访问. 当我在ant中执行此操作时,我收到此错误: generate-from-wsdl: [exec] parsing WSDL ...

  2. Java jni 底层_JAVA语言语言调用底层语言的技术JNI解析

    本文主要向大家介绍了JAVA语言语言调用底层语言的技术JNI解析,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. java语言调用底层语言的技术JNI解析. Java代码执行步骤 JN ...

  3. java jacob语音合成_Java使用Jacob调用SAPI合成语音

    基于语音测试需要,需要将文字数据转换成语音数据,文章未经原作者允许转载,只用于记录. 1.Jar包 版本号:1.18 maven地址:https://mvnrepository.com/artifac ...

  4. java动态方法_Java 动态方法调用

    Java 动态方法调用 在Java中,如果方法重写只是一种名字空间的编写,那么它最多是让人感到有趣,但没有实际价值,但情况并非如此.方法重写构造成了Java最大的一个概念基础:动态方法调度(dynam ...

  5. java单线程异步_Java 实现异步调用

    首先 我遇到的问题是 接口调用时需要更新缓存 而更新缓存又是个说快不快的过程 所以打算做异步调用 返回我所需要的结果即可 ,至于缓存什么时候更新完 就不是我所需要关注的了 废话不多说 上代码 publ ...

  6. java sortmap分析_Java编程中的SortedMap接口

    SortedMap接口扩展了Map.它确保条目以升序排列. 当调用映射中没有任何项时,有几种方法会引发NoSuchElementException.当对象与映射中的元素不兼容时,抛出ClassCast ...

  7. java jaxb 集合_java.util.List是一个接口,JAXB不能处理接口

    java.util.List是一个接口,JAXB不能处理接口 尝试部署我的应用程序时,我似乎得到以下exception: Caused by: com.sun.xml.bind.v2.runtime. ...

  8. sql语句和java的关系_java中Statement 与 PreparedStatement接口之间的关系和区别

    Statement 和 PreparedStatement之间的关系和区别. 关系:PreparedStatement继承自Statement,都是接口 区别:PreparedStatement可以使 ...

  9. java写方法用来调用_Java从入门到入土(79)lambda表达式和方法引用

    lambda表达式是Java8引入的新功能.lambda表达式以字面量的形式把少量代码直接写在程序中,从而让 Java 编程更符合函数式风格(Java 实质上是面向对象语言.不过,引入lambda 表 ...

  10. java 存储过程 数组_Java调用存储过程返回数组

    Java调用存储过程: 结合SQL操作与存储过程 create procedure set_death_age(poet VARCHAR2, poet_age NUMBER) poet_id NUMB ...

最新文章

  1. 安防企业如何应对市场发展新机遇
  2. mysql表结构说明只能为1 8_SQL基础
  3. Coursera, Big Data 1, Introduction (week 3)
  4. 天津财经计算机专业研究生分数线,天津财经大学各专业2015—2020年硕士研究生复试分数线汇总...
  5. 在共享dll中使用mfc_在SpringBoot中使用Spring Session解决分布式会话共享问题
  6. java怎么判断数据类型_数据类型判断
  7. 【转】ABP源码分析三十六:ABP.Web.Api
  8. 简易php access文章管理系统,PHP+ACCESS 文章管理程序代码
  9. 使用MySQLMTOP监控MySQL性能(二)
  10. WordPress更改“固定链接”后 ,页面出现404的解决方法
  11. 网页抓包嗅探器v1.0
  12. logistic人口模型python代码_人口模型(马尔萨斯--vs--logistic).ppt
  13. 爱尔兰咖啡(作者:痞子蔡)
  14. oracle收集snop,SNAP收集服务器信息
  15. 开发环境与运行环境的搭建
  16. mysql中存储指纹数据_业务数据指纹(MD5)的使用和存储注意
  17. 珠海市世鸿置业有限公司投资理财实现财务自由要有复利思维
  18. Java 之父:找Bug最浪费时间,现在不是开源的黄金时代!
  19. 微信支撑10亿用户背后核心技术,竟然是它...
  20. 微信小程序点击复制文本至剪切板

热门文章

  1. Apache HttpClient4使用教程
  2. 关于print spooler无法启动
  3. 可视化实验五:大数据可视化工具—NodeXL
  4. Qt Design studio使用
  5. 比较全的OA系统功能模块列表
  6. 2019全国大学生电子设计竞赛备赛笔记--风力摆--板球--模拟曲射电磁炮
  7. 三大抽样分布:卡方分布,t分布和F分布
  8. 网线转RS232如何接线
  9. 对称加密算法和非对称加密算法的区别
  10. 二分法求函数零点:(递归方法和非递归方法)