ABAP 发布webservice&调用外部webservice

本文讲述了SAP如何发布一个webservice已经如何调用外部的webservice、

1.SE37创建一个函数并且开启远程启用模块

 2.se80---->右键创建企业服务

ABAP 发布webservice&调用外部webservice_第1张图片

 ABAP 发布webservice&调用外部webservice_第2张图片

 ABAP 发布webservice&调用外部webservice_第3张图片

 ABAP 发布webservice&调用外部webservice_第4张图片

 ABAP 发布webservice&调用外部webservice_第5张图片

 ABAP 发布webservice&调用外部webservice_第6张图片

 ABAP 发布webservice&调用外部webservice_第7张图片

 3.SOAMANAGER      去绑定服务

ABAP 发布webservice&调用外部webservice_第8张图片 ABAP 发布webservice&调用外部webservice_第9张图片

 ABAP 发布webservice&调用外部webservice_第10张图片

 ABAP 发布webservice&调用外部webservice_第11张图片

 ABAP 发布webservice&调用外部webservice_第12张图片

 ABAP 发布webservice&调用外部webservice_第13张图片

 ABAP 发布webservice&调用外部webservice_第14张图片

 ABAP 发布webservice&调用外部webservice_第15张图片

上图框中就是我们的需要提供给第三方的服务地址 

将上述地址的网页保存为WSDL的文件,发给第三方系统,

这里开始,我们将自己消费上面发布的webservice

1.SE80---》创建企业服务

ABAP 发布webservice&调用外部webservice_第16张图片

 ABAP 发布webservice&调用外部webservice_第17张图片

 ABAP 发布webservice&调用外部webservice_第18张图片

 ABAP 发布webservice&调用外部webservice_第19张图片

 ABAP 发布webservice&调用外部webservice_第20张图片

 ABAP 发布webservice&调用外部webservice_第21张图片

ABAP 发布webservice&调用外部webservice_第22张图片

这里可以看到,SAP 根据我们提供的wsdl 的文件以及命名的前缀创建了一个类:ZCL_RUNCO_ZWEBSERVICE_PRO

ABAP 发布webservice&调用外部webservice_第23张图片

 双击进去就可以看到。这是方法就是我们要调用的webservice

ABAP 发布webservice&调用外部webservice_第24张图片

 参数里面就放了这个接口的入参和出参。都是根据wsdl文件自动创建的格式,按照要求调用即可

 2.SOAMANGER去绑定服务

ABAP 发布webservice&调用外部webservice_第25张图片

 基于WSDL的配置ABAP 发布webservice&调用外部webservice_第26张图片

 ABAP 发布webservice&调用外部webservice_第27张图片

 ABAP 发布webservice&调用外部webservice_第28张图片

 然后一直点下一个。直到完成即可

3.SE38---》创建个程序测试联通性

REPORT ZTEST_WEB.

DATA: LC_TEST TYPE REF TO ZCL_RUNCO_ZWEBSERVICE_PRO.
DATA: LV_INPUT  TYPE  ZCL_RUNZ_WEBSERVICE_PRO,
      EV_OUTPUT TYPE  ZCL_RUNZ_WEBSERVICE_PRORESPONS.


CREATE OBJECT LC_TEST.

TRY.
    CREATE OBJECT LC_TEST
      EXPORTING
        LOGICAL_PORT_NAME = 'Z_WEBERSERVICE_CON'.   "逻辑端口名称
  CATCH CX_AI_SYSTEM_FAULT .
ENDTRY.
LV_INPUT-IV_HEAD = 888.
TRY.
CALL METHOD LC_TEST->Z_WEBSERVICE_PRO
  EXPORTING
    INPUT  = LV_INPUT
  IMPORTING
    OUTPUT = EV_OUTPUT.
  CATCH CX_AI_SYSTEM_FAULT.
ENDTRY.
WRITE EV_OUTPUT-EV_RETURN.

ABAP 发布webservice&调用外部webservice_第29张图片

你可能感兴趣的:(ABAP,abap,sap)