<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg> <p>目前接触到SAP提供了两种不同的接口,对应也有两种不同的调用方式:1.Restful接口,支持直接通过post请求调用;2.WSDL接口,需要使用SoapUI测试并生成代码调用。大家在对接前要先确认接口调用属于哪种方式,避免浪费时间。</p>
一般SAP提供的接口都需要账号密码验证,所以第一步根据提供的账号(username)和密码(password)生成认证请求头。
根据SAP提供的接口文档组装请求参数。这里可以使用map,也可以使用对象,建议使用对象,字段加上注释,养成良好的习惯。
P.S.
①组装的对象注意转换成JSON;
②SAP接口的字段是严格区分大小写的,以接口文档为准。
我个人习惯用的是RestTemplat,大家可以随意使用自己喜欢的http工具类。
可以直接通过post请求的接口调用非常简单。大家调试的时候,也可以先生成认证头,直接通过postman或者apifox尝试调用。确保接口可以正常调通后,再实现调用代码。

WSDL/SOAP接口调用相对比较麻烦,需要用到SoapUI软件和axis。好在可以通过SoapUI软件自动生成接口调用生成代码,节省了很多时间。
官网:https://www.soapui.org/
官方下载页面:https://www.soapui.org/downloads/soapui/

Axis全称Apache Extensible Interaction System 即阿帕奇可扩展交互系统。Axis本质上就是一个SOAP引擎,提供创建服务器端、客户端和网关SOAP操作的基本框架。目前axis已推出axis2,有兴趣可以自行了解使用。
Apache Axis:https://axis.apache.org/axis/
Apache Axis 1.4 下载页面:https://archive.apache.org/dist/ws/axis/1_4/

1.选择Tools -> Axis 1.X Artifacts

2.在弹出的窗口中点击右下角的Tools按钮

3.将刚刚下载解压的axis文件路径配置在下图所示位置,点击OK

1.创建一个SOAP项目,输入项目名和接口地址

2.如果接口需要账号密码认证,在弹窗中输入

3.点击OK后生成以下项目结构,代表接口正常

4.调试接口。选中Request窗口,点击窗口左上角的绿色三角按钮发起请求,查看窗口右侧返回信息,正常即可。
P.S.
① 如果接口需要账号密码认证,需要在左下角的窗口中填入账号和密码;
② 部分SAP接口在内网和外网请求的地址不同,需要确认请求地址,并修改Request请求的URL地址。

1.在SoapUI软件中点击选中接口,右键 -> Genarate Code -> Axis 1.x Artifacts

2.在弹出的窗口中,选中生成的Java文件路径

3.生成Java代码成功实例图

4.将生成的Java文件拷贝到项目中

Java客户端调用接口代码已经自动生成,但是使用前还有2个地方需要调整。
1.引入axis-1.4的依赖
2.在生成的代码中设置账号和密码
自动生成的Java文件中有一个以Stub结尾的Java文件,找到createCall()这行代码的位置,设置账号和密码的值。
3.组装data请求参数,调用对应的locator类的getHTTP_Port()方法获取远程调用接口,直接调用接口内的方法即可
WSDL/SOAP接口的调用,对于初次接触的人来说相对比较麻烦。但其实总结起来只需要三步:1.先用SoapUI工具调通接口;2.结合axis自动生成客户端代码;3.调用生成的类和方法。
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/6770.html