• 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地址

  • 相关阅读:
    应用实例-最大子列和问题
    什么是算法
    什么是数据结构
    数据结构与算法-Python/C(目录)
    collections模块
    色彩缤纷的Python(改变字体颜色及样式)
    取数组中一段值的算法(转)
    开发者必备,超实用的PHP代码片段(转)
    php中数组自定义排序
    rand值出现负数的解决方案
  • 原文地址:https://www.cnblogs.com/liu1838998131/p/15429229.html
Copyright © 2020-2023  润新知