相关推荐recommended
ABAP接口部分-Web Service提供者与消费者
作者:mmseoamin日期:2024-04-30

ABAP接口部分-Web Service提供者与消费者

文章目录

  • ABAP接口部分-Web Service提供者与消费者
  • Web Service提供者
    • Web Service
      • 测试
      • 配置
      • [SOA网址](https://mysap.goodsap.cn:44300/sap/bc/webdynpro/sap/appl_soap_management )
      • 测试
      • Web Service消费者
        • 创建Services Consumer消费者
        • 创建RFC连接
        • 创建逻辑端口-IP地址
              • 现在不使用LPCONFIG创建逻辑接口,而是在SOA网址上创建
              • 使用URL
              • 输入用户名和密码
              • 报错
              • 创建逻辑端口-WebServices URL
                    • 现在使用这个创建逻辑端口
                    • 进入SOA网址
                    • 填写端口信息
                    • 重新测试执行
                    • 用自己创建的WebService
                      • 创建服务消费者
                        • 注意
                        • 创建RFC
                        • 登录SOA网址
                        • 测试服务消费者
                        • 代码调用
                          • 创建程序
                          • 调用Web Service API
                          • 后面这个本地文件不行
                            • 创建逻辑端口
                            • 测试服务消费者
                            • 报错
                              • 调用 SOAP 运行时函数时出错:SRT:Processing error in Internet Communication Framework: ("Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)")
                              • Postman测试接口
                                  • Headers设置
                                  • Body设置
                                  • Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)

                                    Web Service提供者

                                    Web Service

                                    1、 创建Web Service:SE80

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第1张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第2张

                                    在包上,右击,点击“创建”—“企业服务”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第3张

                                    选择Service Provider,点击继续:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第4张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第5张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第6张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第7张

                                    填写模块的名称:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第8张

                                    如果没有函数模块,则创建一个:

                                    事务代码:SE37

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第9张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第10张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第11张

                                    填写导入参数:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第12张

                                    导出参数:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第13张

                                    之后是:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第14张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第15张

                                    点击完成:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第16张

                                    点击保存:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第17张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第18张

                                    点击确定:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第19张

                                    点击激活按钮进行激活:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第20张

                                    参数文件可以修改:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第21张

                                    这个可以给外部第三方的开发人员调用:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第22张

                                    测试

                                    点击测试按钮进行测试:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第23张

                                    点击“执行”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第24张

                                    执行结果:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第25张

                                    修改成:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第26张

                                    修改完成之后,点击这里:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第27张

                                    点击"执行"按钮执行:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第28张

                                    执行之后:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第29张

                                    原本执行不成功,后面重新生成服务Z_WS002。

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第30张

                                    除了这种办法,还可以直接将函数发布成WebServices。

                                    对Z_WS002同样进行SOA设置:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第31张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第32张

                                    WSDL地址:http://mysap.goodsap.cn:50400/sap/bc/srt/wsdl/flv_10002A111AD1/bndg_url/sap/bc/srt/rfc/sap/z_ws002/400/z_ws002/z_ws002?sap-client=400

                                    配置

                                    1、 配置:t-code:soamanager(由于服务器问题,这个方法暂时配置不了;)

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第33张

                                    在点击“配置”按钮进行配置:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第34张

                                    发现进去报错了:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第35张

                                    后面在自购的账号群公告中看到这个SOA登录网址:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第36张

                                    SOA网址

                                    https://mysap.goodsap.cn:44300/sap/bc/webdynpro/sap/appl_soap_management

                                    输入集团、用户和密码,点击登录:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第37张

                                    点击“Web服务配置”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第38张

                                    这里填写我们刚刚创建的服务:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第39张

                                    双击服务名称:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第40张

                                    点击“创建服务”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第41张

                                    填写信息,点击“下一个”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第42张

                                    设置用户名和密码:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第43张

                                    直接下一步->-下一步。

                                    用户标识/密码如果无法选择,请把Web Service级别改为 NONE:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第44张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第45张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第46张

                                    点击“打开WSDL生成”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第47张

                                    复制URL:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第48张

                                    http://mysap.goodsap.cn:50400/sap/bc/srt/wsdl/flv_10002A111AD1/bndg_url/sap/bc/srt/rfc/sap/z_ws001/400/z_ws001/z_ws001?sap-client=400

                                    RFC函数同步更新:

                                    注意: 如果RFC 函数更新了,也需要到Web Service服务做“一致性检查”更新同步;

                                    在服务上右击,点击“一致性检查”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第49张

                                    保存并激活:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第50张

                                    测试

                                    点击测试运行按钮进行测试:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第51张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第52张

                                    结果:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第53张

                                    Web Service消费者

                                    事务代码:SE80:

                                    创建Services Consumer消费者

                                    选择:Service Consumer,点击“继续”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第54张

                                    选择“External WSDL/Schema”,点击“继续”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第55张

                                    选择“URL”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第56张

                                    输入URL地址:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第57张

                                    输入用户名和密码:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第58张

                                    点击,新建请求号,输入描述,点击确定:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第59张

                                    选择好请求号:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第60张

                                    输入请求号,输入前缀:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第61张

                                    点击“完成”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第62张

                                    点击“保存”按钮进行保存:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第63张

                                    保存并激活:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第64张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第65张

                                    创建RFC连接

                                    用事务代码 SM59 进入 RFC 连接配置:

                                    事务代码:SM59

                                    点击创建:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第66张

                                    输入要创建的目标名称,选择连接类型:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第67张

                                    输入描述,服务器提供者的域名和端口号,点击保存:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第68张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第69张

                                    创建逻辑端口-IP地址

                                    现在不使用LPCONFIG创建逻辑接口,而是在SOA网址上创建

                                    使用在是外部ip地址和端口的情况,例如这种:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第70张

                                    T-CODE: LPCONFIG

                                    事务代码: LPCONFIG

                                    输入事务代码之后,点击确定:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第71张

                                    复制这个类的名称:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第72张

                                    填写到这里:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第73张

                                    如果是外部的ip地址端口,就可以使用下面的:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第74张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第75张

                                    使用URL

                                    如果是SAP WebSerivices创建的URL ,就填这个:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第76张

                                    这里改了之后,还是报错。

                                    这里要选中,否则激活会失败:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第77张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第78张

                                    点击激活按钮进行激活:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第79张

                                    返回接受者服务器运行测试:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第80张

                                    输入逻辑接口:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第81张

                                    可以点击这里,修改参数的名称:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第82张

                                    可以这里返回执行界面:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第83张

                                    点击“执行”按钮执行:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第84张

                                    输入用户名和密码

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第85张

                                    报错

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第86张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第87张

                                    无法访问,是因为前面选择的是HTTP对象,RFC里面的WebServices_Test2,后面改成URL地址。

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第88张

                                    这个不是很清楚是怎么回事,后面查阅资料,重新再SOA中为WebServices消费者创建逻辑接口

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第89张

                                    创建逻辑端口-WebServices URL

                                    现在使用这个创建逻辑端口

                                    之前的逻辑端口没有什么效果,在这里重新创建逻辑端口,这个是基于之前在SAP系统中创建WebServices提供者时,暴露给外面的那个URL地址的。

                                    进入SOA网址

                                    进入SOA网址:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第90张

                                    填写端口信息

                                    填写逻辑端口的名称为ZWS_CO_Z_WS002_LHY,填写描述等信息:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第91张

                                    填写WebServicesURL、用户名和密码:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第92张

                                    点击“下一个”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第93张

                                    输入用户名和密码:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第94张

                                    点击“完成”按钮:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第95张

                                    填写好参数的值之后:

                                    重新测试执行

                                    点击执行:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第96张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第97张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第98张

                                    点击执行之后,返回结果是3:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第99张

                                    用自己创建的WebService

                                    将在C#中创建的WebService服务弄到本机的IIS上

                                    创建服务消费者

                                    事务代码:SE80

                                    1、点击创建企业服务

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第100张

                                    选择“Service Customer”,点击“继续”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第101张

                                    选择“External WSDL/Schma",点击”继续“:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第102张

                                    选择URL:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第103张

                                    输入URL,要在文件的后面加上?wsdl:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第104张

                                    填写请求号,点击创建,输入描述:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第105张

                                    填写请求号,和前缀:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第106张

                                    点击“完成“按钮:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第107张

                                    点击保存:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第108张

                                    创建的企业服务如下:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第109张

                                    保存并激活:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第110张

                                    注意

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第111张

                                    创建RFC

                                    用事务代码 SM59 进入 RFC 连接配置:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第112张

                                    填写描述、主机和端口:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第113张

                                    点击“连接测试”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第114张

                                    输入用户名和密码即可:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第115张

                                    登录SOA网址

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第116张

                                    点击“Web服务配置”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第117张

                                    选择消费者代理,输入筛选条件,找到这个类名,双击:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第118张

                                    点击创建,选择“基于WSDL的配置’':

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第119张

                                    填写信息,勾选缺省:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第120张

                                    输入URL,输入用户名和密码,点击下一个:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第121张

                                    点击下一个:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第122张

                                    输入用户名和密码,点击下一个:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第123张

                                    点击下一个:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第124张

                                    一直点击下一个,直至完成:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第125张

                                    逻辑端口创建成功:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第126张

                                    测试服务消费者

                                    返回接受者服务器运行测试:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第127张

                                    输入逻辑端口名称和方法名称,点击执行:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第128张

                                    可以点击这个按钮,修改xml的内容:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第129张

                                    修改完毕之后,可以点击这个按钮返回:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第130张

                                    点击执行:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第131张

                                    返回结果,说明配置成功:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第132张

                                    代码调用

                                    创建程序

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第133张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第134张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第135张

                                    输入下面的代码:

                                    *&---------------------------------------------------------------------*
                                    *& Report ZTEST_WEB_SERVICE_CONSUMER
                                    *&---------------------------------------------------------------------*
                                    *&
                                    *&---------------------------------------------------------------------*
                                    REPORT ztest_web_service_consumer.
                                    DATA: lo_clientproxy   TYPE REF TO zws_co_web_service1soap,      "参考生成的代理类
                                          lo_sys_exception TYPE REF TO cx_ai_system_fault.
                                    DATA: ls_srm_input          TYPE zws_age_soap_in,
                                          ls_srm_input_response TYPE zws_age_soap_out.
                                    * 2、调用webservice
                                      CREATE OBJECT lo_clientproxy
                                        EXPORTING
                                          logical_port_name = 'ZWS_CO_WEB_SERVICE1SOAP'.  "调用对应的逻辑端口
                                          ls_srm_input-a1 = '22'.
                                          ls_srm_input-a2 = '52'.
                                          TRY.
                                          CALL METHOD lo_clientproxy->age
                                            EXPORTING
                                              input          = ls_srm_input
                                            IMPORTING
                                              output = ls_srm_input_response.
                                        CATCH cx_ai_system_fault INTO lo_sys_exception."捕获错误
                                          "CATCH zoa_cx_exception INTO lo_oa_exception.
                                      ENDTRY.
                                      "o_type    = ls_srm_input_response-parameters-return-status.
                                      "o_message = ls_srm_input_response-parameters-return-message.
                                      "o_data    = ls_srm_input_response-parameters-return-data.
                                    WRITE: /,'WebService 测试:',ls_srm_input_response-age_result.
                                    

                                    调用Web Service API

                                    输入程序名,点击创建:

                                    输入描述,选择可执行文件:

                                    *&---------------------------------------------------------------------*
                                    *& Report ZWEBSERVICE_TEST02
                                    *&---------------------------------------------------------------------*
                                    *&
                                    *&---------------------------------------------------------------------*
                                    REPORT ZWEBSERVICE_TEST02.
                                    data: len         type        i,"发送报文长度
                                          len_string  type        string,
                                          url         type        string, "接口地址
                                          http_client type ref to if_http_client,"http客户端
                                          post_string type        string,
                                          result      type        string.
                                      DATA: LV_LEN         TYPE I.
                                    data: it_header type tihttpnvp.
                                    data: gv_json_in TYPE string.
                                    gv_json_in = '{"ApiType":"SapInterfaceController","Parameters":[{"Value":[{"Factory":"1100",'
                                                    &&'"FactoryName":"和胜","Center":"C001","CenterDesc":"工作中心001","Depart":"MES",'
                                                    &&'"DepartName":"MES项目组","Flag":"0"}]}],"Method":"SaveWorkCenter","Context":{"InvOrgId":1}}'.
                                    START-OF-SELECTION.
                                    url = 'http://192.168.4.32:1028/api/dataportal/invoke'.
                                      "创建http客户端
                                      call method cl_http_client=>create_by_url
                                        exporting
                                          url                = url
                                        importing
                                          client             = http_client
                                        exceptions
                                          argument_not_found = 1
                                          plugin_not_active  = 2
                                          internal_error     = 3
                                          others             = 4.
                                      "设定传输请求内容格式以及编码格式
                                      http_client->REQUEST->SET_CONTENT_TYPE( CONTENT_TYPE = 'application/json; charset=utf-8' ).
                                     "设置http method 为POST
                                      http_client->request->set_method( if_http_request=>co_request_method_post ).
                                     "设置待传输内容长度
                                      LV_LEN = STRLEN( gv_json_in ).
                                     "设置调用方法
                                      CALL METHOD http_client->REQUEST->SET_HEADER_FIELD
                                        EXPORTING
                                          NAME  = '~request_method'
                                          VALUE = 'POST'.
                                      "http_client->request->set_cdata( data = gv_json_in ).
                                      "设置传入字符串
                                      CALL METHOD http_client->REQUEST->SET_CDATA
                                        EXPORTING
                                          DATA   = gv_json_in
                                          OFFSET = 0
                                          LENGTH = LV_LEN.
                                      "发送数据
                                      call method http_client->send
                                        exceptions
                                          http_communication_failure = 1
                                          http_invalid_state         = 2
                                          http_processing_failed     = 3
                                          http_invalid_timeout       = 4
                                          others                     = 5.
                                      "接收返回
                                      call method http_client->receive
                                        exceptions
                                          http_communication_failure = 1
                                          http_invalid_state         = 2
                                          http_processing_failed     = 3.
                                     "获取接口返回的字符串
                                      result = http_client->response->get_cdata( ).
                                    WRITE: /,'测试数据',result.
                                    

                                    后面这个本地文件不行

                                    选择本地文件,因为本地的URL不成功:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第136张

                                    选择文件:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第137张

                                    在这里另存为下来的:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第138张

                                    创建新的请求号,并填写描述:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第139张

                                    填写内容之后,点击“继续”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第140张

                                    点击“完成”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第141张

                                    点击保存,并激活:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第142张

                                    创建逻辑端口

                                    为我们刚刚创建的消费者创建逻辑端口

                                    登录SOA网址:https://mysap.goodsap.cn:44300/sap/bc/webdynpro/sap/appl_soap_management

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第143张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第144张

                                    选择“Web服务配置”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第145张

                                    选择“消费者代理”,输入ZSW_*筛选条件,点击搜索,找到我们刚刚创建的消费者代理:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第146张

                                    双击刚刚创建的“消费者代理”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第147张

                                    点击“创建”,选择“基于WSDL的配置”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第148张

                                    输入逻辑端口名称和描述,点击下一个:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第149张

                                    选择文件,选中文件,点击下一个:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第150张

                                    输入用户名和密码,点击下一个:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第151张

                                    点击“下一个”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第152张

                                    点击“完成”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第153张

                                    测试服务消费者

                                    点击执行测试:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第154张

                                    输入逻辑端口名称,点击执行

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第155张

                                    选择方法,再次点击执行:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第156张

                                    可以点击这里修改XML内容,改变参数的值:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第157张

                                    修改参数的值,点击返回:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第158张

                                    点击“执行”:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第159张

                                    报错

                                    点击执行之后,报下面的错误:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第160张

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第161张

                                    调用 SOAP 运行时函数时出错:SRT:Processing error in Internet Communication Framework: (“Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)”)

                                    出现上面这个问题是因为,我自己的SAP服务器在外网,但是我访问的地址是内网地址,所以是访问不到的,所以失败了。

                                    SRT Framework exception: 服务 Ping 错误:调用 SOAP 运行时函数时出错:SRT: Processing errorin Internet Communication Framework: (“Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)”)类型消息SRT Framework exception: 服务 Ping 错误:调用 SOAP 运行时函数时出错:SRT: Processing errorin Internet Communication Framework: (“Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)”)服务 Ping 错误:调用 SOAP 运行时函数时出错:SRT: Processing error in Internet Communication Framework: (“Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)”)处理 Web 服务调用时出错调用 SOAP 运行时函数时出错:SRT: Processing error in Internet Communication Framework: (“Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)”

                                    Postman测试接口

                                    首先用Postman测试接口是否配通

                                    Headers设置

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第162张

                                    报错如下:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第163张

                                    Body设置

                                    选择raw,XML:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第164张

                                    这里填成在浏览器测试时显示的请求格式:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第165张

                                    点击Send发送,得到相应结果:

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第166张

                                    Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)

                                    ABAP接口部分-Web Service提供者与消费者,在这里插入图片描述,第167张

                                    这个问题没有解决。