Java如何基于wsimport调用wcf接口
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-pproxy
-d:指定.class文件的输出目录
-s:指定.java文件的输出目录
-p:定义生成类的包名,不定义的话有默认包名
2、将生成文件放到项目中,创建调用类
publicclassTestWsimport{
publicMappush(ParamDTOparams){
BaseInfoServiceclient=newBaseInfoService();
//将接口参数封装在ParamDTO中,代码更简洁
StringrequestInputStream=JSON.toJSONString(params);
StringresultStr=client.getBasicHttpBindingIBaseInfoService()
//需要调用的方法
.sendParams(requestInputStream);
JSONObjectresultObj=JSON.parseObject(resultStr);
Integersuccess=resultObj.getInteger("Success");
if(success==0){
MaperrorMap=Maps.newConcurrentMap();
StringerrorDesc=resultObj.getString("Body");
errorMap.put(clueInfo.getRequestObjectList().get(0).getClueCode(),errorDesc);
returnerrorMap;
}
returnnull;
}
}
示例接口较简单,只需要发送数据。不同的webservice接口生成的代码会有出入,调用接口的代码需要根据实际情况进行调整。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下