ABAP-WebService代理类

*&---------------------------------------------------------------------*
*& Report  Y_CLY_WS_001
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT Y_CLY_WS_001.

DATA: LV_ANS TYPE STRING.
DATA: LV_MSG TYPE STRING.

START-OF-SELECTION.

  PERFORM FRM_CALL_WS_PORT1 CHANGING LV_ANS LV_MSG.
  WRITE: LV_MSG.

*&---------------------------------------------------------------------*
*&      Form  FRM_CALL_WS_PORT1
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM FRM_CALL_WS_PORT1 CHANGING CV_ANS CV_MSG.

  DATA: L_BOOL    TYPE FLAG.
  DATA: INTERFACE TYPE REF TO ZCO_DESADAPTER_SOAP.    " 代理类 proxy name

  DATA: EX_ERR1   TYPE REF TO CX_AI_SYSTEM_FAULT.
  DATA: EX_ERR2   TYPE REF TO CX_AI_APPLICATION_FAULT.
  DATA: EX_ERR3   TYPE REF TO CX_SY_REF_IS_INITIAL.


  DATA: L_I    TYPE ZDES_TEST_SOAP_IN.
  DATA: L_O    TYPE ZDES_TEST_SOAP_OUT.

  """"""""""" 代理端口 可通过 SOAMANAGER or LPCONFIG 生成
  TRY .
      CREATE OBJECT INTERFACE
        EXPORTING
          LOGICAL_PORT_NAME = '&PARA1'.    " 代理端口
    CATCH CX_AI_SYSTEM_FAULT INTO EX_ERR1.
      CV_MSG = EX_ERR1->GET_TEXT( ).
      CV_ANS = ''.
  ENDTRY.

  """"""""""" 调用函数
  TRY.
      CALL METHOD INTERFACE->DES_TEST
        EXPORTING
          INPUT  = L_I
        IMPORTING
          OUTPUT = L_O.

    CATCH CX_AI_SYSTEM_FAULT      INTO EX_ERR1.
      CV_MSG = EX_ERR1->GET_TEXT( ).
      CV_ANS = ABAP_TRUE.
    CATCH CX_AI_APPLICATION_FAULT INTO EX_ERR2 .
      CV_MSG = EX_ERR2->GET_TEXT( ).
      RETURN.
    CATCH CX_SY_REF_IS_INITIAL    INTO EX_ERR3.
      CV_MSG = EX_ERR3->GET_TEXT( ).  " 端口PORT1不存在时
      RETURN.
  ENDTRY.
ENDFORM.                    " FRM_CALL_WS_PORT1

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值