前提:外部提供可用的web service,通常为链接

1. SE80,创建web service proxy
   1)SE80,选择package,右击->create->Enterprise service
   2) Object Type, 选择Service Consumer,继续
   3)Select source,选择URL/HTTP Destination,继续
   4)URL中输入网址,继续
   5)分配package和前缀(随意),完成
   6)保存,激活
2. LPCONFIG,创建逻辑端口
   1)输入proxy class(第1步中生成的proxy name)和logical port(随意,通常同proxy class),选中Default port
   2)输入描述,选中message id 和 state management
   3)调用参数:URL输入去掉?WSDL的地址
   4)操作:右侧SOAP操作,输入xml文件中soapAction等号后的内容,包括引号
3. 程序调用web service
   例子:
  DATA:
        lo_clientproxy      TYPE REF TO z_proxy. "proxy class
  DATA:
        lo_input           TYPE z_input,      "输入参数
        lo_output          TYPE z_output.     "输出参数

lo_request =  request.

CREATE OBJECT lo_clientproxy.
  TRY.
      CALL METHOD lo_clientproxy->z_method "web service函数
        EXPORTING
          to_input  = lo_input
        IMPORTING
          to_output = lo_output.

*        ***Write Out the Basic Information
    CATCH cx_ai_system_fault INTO g_sys_exception."捕获错误
      IF g_sys_exception IS NOT INITIAL.
        WRITE: 'Error:Communication Error'.
      ENDIF.
    CATCH cx_ai_application_fault INTO g_app_exception.
      IF g_app_exception IS NOT INITIAL.
        WRITE 'Error:Application Error'.
      ENDIF.
  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,其他都一样
刚看一个链接里有介绍:http://hi.baidu.com/tktik/item/fcaf0e53e26cbe3a32e0a951
测试问题二:
连接总是不同,一直有cx_ai_system_fault异常
解决方案:
    将逻辑端口中的域名改为ip地址
值得注意的是,实现该功能,不需要创建RFC连接

SAP调用外部web service相关推荐

  1. abap 调用外部web service 使用小结

    abap调用外部 web service 时,大致分为以下三个步骤 1,se80,选择package,点击创建enterprise service/web service-proxy client 2 ...

  2. SAP 调用外部系统webservice接口(SOAP-XML)-SOAMANAGER

    SAP 调用外部系统webservice接口(SOAP-XML)-SOAMANAGER 文章目录 SAP 调用外部系统webservice接口(SOAP-XML)-SOAMANAGER 一.GUI客户 ...

  3. 调用天气预报Web Service

    调用天气Web Service             i.创建项目                 项目名称:weatherclient             ii.创建本地的wsdl文件    ...

  4. Java如何通过WSDL文件来调用这些web service

    下面我们来看Java如何通过WSDL文件来调用这些web service: 注意,以下的代码并没有经过真正的测试,只是说明这些情况,不同版本的Axis相差很大,大家最好以apache网站上的例子为准, ...

  5. C++ 调用 SOAP Web Service

    C++ 调用 SOAP Web Service 背景 首先,gSoap 肯定是个不错的选择,但是如果你的程序要调用多个 Web Services(即有多个 WSDL),gSoap 会比较麻烦.还有一个 ...

  6. CORBA 简单了解和JAVA与C++互操以及C++调用Java web service

    CORBA了解 CORBA(Common Object Request Broker Architecture, 公共对象请求代理体系结构)是由OMG(对象管理组织,Object Management ...

  7. 【SAP】ABAP——Web Service简介与配置方法

      本文转载  https://www.cnblogs.com/zohoo/p/7295920.html. 一. SAP Web Service简介 二. SAP Web Service配置准备工作 ...

  8. mule 基于wsdl调用cxf web service

    最近看mule的一个文档mule esb 3 concepts,介绍了mule esb的一些基本概念.看完后,对soa,esb,服务等都有了更深的认识.今天试验通过mule进行cxf web serv ...

  9. 在ASP.NET Atlas中调用Web Service——创建Mashup调用远端Web Service(基础知识以及简单示例)...

    作者:Dflying Chen (http://dflying.cnblogs.com/) 注:Atlas中的Mashup极其复杂,其中涉及众多的对象与架构,为了写这篇文章,我花了不少时间学习研究.同 ...

最新文章

  1. modoer点评系统3.5_丰田“奥拓”正式亮相,油耗3.5L,配软顶敞篷+四开门,或4万起...
  2. 前端通信:ajax设计方案(十)--- 完善Promise A+规范,增加mock数据功能
  3. Spark源码阅读02-Spark核心原理之容错及HA(高可用)
  4. SDUT 贪心算法 删数问题
  5. 大剑无锋之Redis面试题【推荐】
  6. java删除通用方法_一个比较通用的java删除文件和文件夹的方法
  7. linux定时任务启动
  8. 不要666升级版(数位DP,三次方和)
  9. JavaEE实战班第13天
  10. 网站登录JWT的实现
  11. C#通用类库--DOS常用命令
  12. 赚小钱,靠学一门技术没问题,那想赚大钱该怎么做呢?
  13. linux系统装好后优化,CentOS 5.6 Linux安装系统后的基本优化
  14. Windows:修改键盘映射表
  15. 【干货】|800份实战经验PPT免费下载
  16. python从入门到入土表情包-我用Python一键保存了半佛老师所有的骚气表情包
  17. C++ vector 标准差
  18. 2021-03-15我的博客
  19. Http简介(关于HTTP请求GET和POST的区别)
  20. 如何让nginx不返回304

热门文章

  1. 【事件】对战微信,阿里企业级社交产品“钉钉”的深度解读
  2. 面试题: Vue中的 computed 和 watch的区别
  3. linux搭建gitlab
  4. PostgreSQL、Greenplum 日常监控 和 维护任务
  5. Android开发之--Preferences的使用
  6. java设计模式:适配器设计模式
  7. 共享一个邮件发送的程序( share a Mail Sending program)
  8. 为什么在Docker里使用gdb调试器会报错
  9. 搭建阿里云ecs服务器(一:购买)
  10. Mpg123源代码详解