• SAP调用外部webservice接口


    SAP 调用外部webservice接口

    SE80企业服务创建代理类【SERVICE CONSUMER】

     

     

     

    地址无效时,注意地址是否为WSDL类型,且地址以 ?WSDL皆为

    完成创建

     

     

    SOAMANGER 创建端口号

     

    输入代理类名称

     

     

    创建 --- 手动创建

     

     

     

     

    调用方法:代码

      DATA:
        LO_CLIENTPROXY   TYPE REF TO ZQMCO_SAP_QMS_SENT_SAMP_QUALIT, " 代理类
        LO_SYS_EXCEPTION TYPE REF TO CX_AI_SYSTEM_FAULT,
        LO_APP_EXCEPTION TYPE REF TO CX_AI_APPLICATION_FAULT.

      DATA: " 代理类参数定义
        LS_INPUT  TYPE ZQMSAP_QMS_SENT_SAMP_QUALITY_4,
        LS_OUTPUT TYPE ZQMSAP_QMS_SENT_SAMP_QUALITY_S.

     TRY. "建立端口连接
          CREATE OBJECT LO_CLIENTPROXY
            EXPORTING
              LOGICAL_PORT_NAME = 'ZQM0010'.
        CATCH CX_AI_SYSTEM_FAULT .
          MESSAGE '接口代理创建失败!' TYPE 'E'.
          RETURN.
      ENDTRY.

    "参数整理

      LS_INPUT-REQUESTHEAD-SERVICENAME  = 'S_SAP_QMS_002S'.
      LS_INPUT-REQUESTHEAD-SOURCESYSTEM = 'SAP'.


       TRY. "调用方法

          CALL METHOD LO_CLIENTPROXY->SAP_QMS_SENT_SAMP_QUALITY
            EXPORTING
              INPUT  = LS_INPUT
            IMPORTING
              OUTPUT = LS_OUTPUT.
        CATCH CX_AI_SYSTEM_FAULT INTO LO_SYS_EXCEPTION."捕获错误
          MESSAGE  '接口调用失败' TYPE 'S' DISPLAY LIKE 'E' .
      ENDTRY.

    测试问题一:
    第一步时,遇到问题HTTP 404问题,但是链接直接可以浏览器打开

    解决方案:
    1. 将网址链接(JAVA发布的web service通常以?wsdl结尾),另存到本地,保存为
    xml文件
    2. 修改xml文件,删除下面内容,删除后保存
    <wsdl:binding ……> …… </wsdl:binding>
    <wsdl:port …….> …….</wsdl:port>
    3. SE80创建web service proxy时,就Select source,选择Local file,其他都一

    测试问题二:
    连接总是不同,一直有cx_ai_system_fault异常
    解决方案:
    将逻辑端口中的域名改为ip地址

  • 相关阅读:
    序列合并
    基础数论函数练习题
    Chirp Z-Transform
    [IOI2020]数蘑菇
    springboot devtools 依赖
    RestTemplate的使用(项目实例)
    Springboot事件监听实例
    HttpClient的使用(项目实例)
    通过http方式传递base64图片字符串无法还原成图片的原因
    springboot实现滑动验证码(redis+token+base64)
  • 原文地址:https://www.cnblogs.com/liu1838998131/p/15429229.html
Copyright © 2020-2023  润新知