SAP&Java WebService(二) ----ABAP调用SAP生成的WebService

1.进入T-CODE:  SM59

   选择新建。

SAP&Java WebService(二) ----ABAP调用SAP生成的WebService_第1张图片


写上服务器信息,保存。

SAP&Java WebService(二) ----ABAP调用SAP生成的WebService_第2张图片


2.定义Proxy

  进SE80

SAP&Java WebService(二) ----ABAP调用SAP生成的WebService_第3张图片


SAP&Java WebService(二) ----ABAP调用SAP生成的WebService_第4张图片

URL写上我们在上篇中新建的WSDL地址。

SAP&Java WebService(二) ----ABAP调用SAP生成的WebService_第5张图片

写上用户名/密码

SAP&Java WebService(二) ----ABAP调用SAP生成的WebService_第6张图片

写上包名和前缀

SAP&Java WebService(二) ----ABAP调用SAP生成的WebService_第7张图片

然后激活~

SAP&Java WebService(二) ----ABAP调用SAP生成的WebService_第8张图片



3.定义逻辑端口  T-CODE:LPCONFIG

写上我们刚才新建的Proxy类以及逻辑端口

SAP&Java WebService(二) ----ABAP调用SAP生成的WebService_第9张图片

保存,激活

SAP&Java WebService(二) ----ABAP调用SAP生成的WebService_第10张图片


4.我们可以开始写程序了

先看一下我们刚才一系列操作所带出来的结果。

创建了一个类,以及DataElement和Structure

SAP&Java WebService(二) ----ABAP调用SAP生成的WebService_第11张图片


代码如下:

*****这个类是刚才我们所创建的
DATA PROXY TYPE REF TO ZWSTESTCO_ZWS_TEST.
*****这两个是刚才所创建的结构
DATA LS_INPUT  TYPE ZWSTESTZWS_GETMAKTX.
DATA LS_OUTPUT TYPE ZWSTESTZWS_GETMAKTX_RESPONSE.
DATA:LO_SYS_EXCEPTION   TYPE REF TO CX_AI_SYSTEM_FAULT.

START-OF-SELECTION.

****创建对象,这个是根据逻辑端口创建
  TRY.
      CREATE OBJECT PROXY
        EXPORTING
          LOGICAL_PORT_NAME = 'ZLP100'.
    CATCH CX_AI_SYSTEM_FAULT .
  ENDTRY.

****调用web service的方法
  LS_INPUT-MATNR = 'A-0001'.
  TRY.
      CALL METHOD PROXY->ZWS_GETMAKTX
        EXPORTING
          INPUT  = LS_INPUT
        IMPORTING
          OUTPUT = LS_OUTPUT.
    CATCH CX_AI_SYSTEM_FAULT INTO LO_SYS_EXCEPTION .
    CATCH CX_AI_APPLICATION_FAULT .
  ENDTRY.

  WRITE: LS_OUTPUT-MAKTX.

结果:在数据库中查询了一条数据成功。

SAP&Java WebService(二) ----ABAP调用SAP生成的WebService_第12张图片  



你可能感兴趣的:(SAP&Java WebService(二) ----ABAP调用SAP生成的WebService)