这里写自定义目录标题

  • 使用java调用webservice接口

使用java调用webservice接口

当我们使用java去访问webservice的接口时,有很多种方式,这里我们使用apache cxf的方式,因为他很方便的可以将wsdl文件直接转换生成java代码。

进入apache cxf的bin目录下,使用如下命令将wsdl文件生成java代码

// An highlighted block
wsdl2java -d . -p com.cxf.client http://localhost:8080/testCXF/service/cxfService?wsdl

将生成的代码拷贝到你的项目工程中,

接着,在你的项目工程里,新建一个工具类,我这里取名为WebApiUtil.java

参考如下代码

private static final QName SERVICE_NAME = new QName("urn:sap-com:document:sap:rfc:functions", "ZWSPI0000");private static final Logger LOGGER = LogManager.getLogger(WebApiUtil.class);/*** * @param serviceappid* @param servicemodule* @param mainFormat* @param mainStr 参数 xml_1 json_0   * @return*/public static String get(String serviceappid, String servicemodule, String mainStr, String mainFormat) {StackTraceElement[] es = Thread.currentThread().getStackTrace();String detail = "空";if(es.length>=2){detail = es[2].getClassName()+"_"+es[2].getMethodName()+"_"+es[2].getLineNumber();}String methodId = StrUtil.getUUID();StringBuffer requestStr = new StringBuffer("接口请求_");requestStr.append(methodId);requestStr.append(":");if(StringUtils.isNotBlank(serviceappid)){requestStr.append("serviceAppId_");requestStr.append(serviceappid);requestStr.append(",");}if(StringUtils.isNotBlank(servicemodule)){requestStr.append("serviceModule");requestStr.append(servicemodule);requestStr.append(",");}if(StringUtils.isNotBlank(mainStr)){requestStr.append("mainStr");requestStr.append(mainStr);requestStr.append(",");}if(StringUtils.isNotBlank(mainFormat)){requestStr.append("mainFormat");requestStr.append(mainFormat);requestStr.append(",");}URL wsdlURL = ZWSPI0000_Service.WSDL_LOCATION;ZWSPI0000_Service ss = new ZWSPI0000_Service(wsdlURL, SERVICE_NAME);ZWSPI0000 port = ss.getBinding();{//VILST0测试      VLSPRD正式String _zfmPIWS0000__return = port.zfmPIWS0000("VILST0", "", methodId, "", "", "", "0", "0", mainFormat, mainStr, "", "", serviceappid, "", servicemodule, "", "", "", "", "", "");System.out.println("接口响应_"+_zfmPIWS0000__return);LOGGER.info("接口响应_"+detail+"_"+methodId+":"+_zfmPIWS0000__return+"_"+mainStr);return _zfmPIWS0000__return;}}

使用的时候,如果想调用wenservice上的接口,直接在代码中这样写

WebApiUtil.get()....

学会了吗?有不懂的欢迎在下方评论。

Apache CXF生成java代码用java调用Webservice接口相关推荐

  1. java用axis方式调用webservice接口

    最近需要使用webservice接口,所以总结了一下全过程,希望能够对大家有所帮助. 开发使用的项目框架是ssm框架,tomcat服务器. 首先我们会拿到一个调用webservice接口的网址,类似这 ...

  2. Java,Axis方式调用WebService接口,支持多参数

    package com.demo.modules.si.util;import org.apache.axis.client.Call; import javax.xml.rpc.ParameterM ...

  3. java:浅谈axis调用webservice接口

     [申明:此代码已经经过测试可以正确使用:但内容解释为个人见解,如有不准确之处,请指教.              阅读前请先仔细阅读"[]"中的说明文字,以免与您的需求不符而 ...

  4. JAVA中使用XFire调用WebService接口

    http://blog.csdn.net/wangjian223344/article/details/11899187 首先以helloworld为例.网上看了好多xifre的例子几乎没好用的烦燥 ...

  5. java axisclient超时_调用webservice接口超时

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Exception in thread "main" AxisFault faultCode: {http://schemas.xml ...

  6. java调用接口速度慢,Java 调用 webservice 接口,为什么这么慢

    Java 调用 webservice 接口,为什么这么慢,有没有好的优化方案,本人目前改成 http 方式发 soap 消息调用,速度依旧很慢,维持在平均 100ms 下不来. 之前用 cxf 的 J ...

  7. Java使用XFire调用WebService接口

    看了一些Java调用WebService接口的例子,很多都是Ctrl+C,Ctrl+V的,其中有很多拿来使用后发现有错误,令人郁闷,特此写了一篇经过测试的,只是一个小例子. 服务端(为客户端提供Web ...

  8. java使用axis2调用webservice接口实例

    说明:我目前的项目环境是struts2+spring+mybatis+oracle,以下代码是java使用axis2调用webservice接口实例. import javax.xml.namespa ...

  9. JAVA使用HttpClient调用webservice接口

    JAVA使用HttpClient调用webservice接口 关于HttpClient用法参考: HttpClient-4.5.2官方教程完整翻译 官方教程原文链接 HttpClient下载地址: 链 ...

最新文章

  1. 网站安全登录 web应用安全登录 密码 防截获
  2. Android开发--环境的配置
  3. 稳扎稳打Silverlight(33) - 3.0控件之AutoCompleteBox, DataPager
  4. 机器学习之必知开源数据集
  5. H5入门-xhtml+css2-第01节
  6. Linux 5.10 LTS 发布,支持到 2026 年
  7. 阿里矢量图库icomoon的icon引用方法
  8. ZKTeco/熵基科技F18指纹门禁考勤一体机 破解管理员
  9. docker方式安装redis-自定义redis配置文件
  10. Beer Bill(签到题)
  11. 计算机ppt制作教案,教案幻灯片制作
  12. 【yolov5 v6.0】中断以后重新训练,增加epochs,冻结层
  13. MySQL中针对SQL语句优化
  14. 技嘉主板命名规则是什么
  15. STM32_基础入门_新建工程文件—基于固件库
  16. 一起分析Linux系统设计思想——03内核启动流程分析(六)
  17. 脑电EEG常用的特征
  18. VirtualNES虚拟红白机
  19. 仅展示成果:基于ROS的自动驾驶系统搭建教程(三):激光定位ndt_matching
  20. IE下的deflate模式

热门文章

  1. FastClick插件
  2. ​ MyBatis 延迟加载 ​
  3. 13位时间戳转日期格式
  4. 如何打开导出的EML邮件文件并且合并到EXCEL表
  5. Linux--僵死进程(僵尸进程)
  6. Android开发--简单实现Android应用的启动页
  7. 联合证券|机构展望2023:A股盈利修复可期
  8. 广义积分中值定理的证明
  9. TCP与UDP的区别(详解)
  10. 中国移动拒绝iPhone,因为oPhone即将发布