`
JerryWang_SAP
  • 浏览: 1026343 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

云端的ABAP Restful服务开发

阅读更多

愉快的暑假结束了,今天是小朋友新学期开学后的第一个周日,不知道各位家长是否和小朋友们一起,已经适应了新学期的生活了么?
Jerry从少的可怜的属于自己的周末时光挤了一小部分时间出来,写了这篇文章。

Jerry之前的一篇文章 从ABAP Netweaver的SICF到SAP Kyma的Lambda Function,我曾经提到过,如果想将ABAP Netweaver里的资源以Restful API的方式暴露出来,SICF这个事务码绝对是一大利器。

 

 

我们只需要在SICF里合适的路径下创建节点,为该节点创建一个ABAP类,就可以专注于实现接口定义的方法IF_HTTP_EXTENSION~HANDLE_REQUEST, 在里面编写应用逻辑了。应用开发人员无需关注和操心这些ABAP类什么时候被实例化和调用,可以把这个HANDLE_REQUEST方法看作是一个回调函数,当请求到来时,由Netweaver的ICF框架(Internet Communication Framework)负责把请求路由到对应的ICF节点并创建ABAP类,调用HANDLE_REQUEST方法。
每个SICF节点会根据其路径被分配一个url, 如果是Corporate网络里,用浏览器或者编程语言直接访问该url,就能消费SICF暴露的资源了。
如果想让这个位于Corporate网络内的url被Internet网络访问,就得借助SAP Cloud Connector:

 

 

具体步骤在我之前的文章使用Java+SAP云平台+SAP Cloud Connector调用ABAP On-Premise系统里的函数 里介绍过。

对于ABAP开发人员来说,一个好消息是,SAP Cloud Platform如今也支持ABAP运行环境了。现在我们通过在SAP云平台 ABAP运行环境里完成类似之前在On-Premises ABAP系统的SICF事务码里的开发任务,来感受ABAP到了云端之后,给ABAP开发者带来的巨大便利。

 

 

按照Jerry之前的文章在SAP云平台ABAP编程环境上编写第一段ABAP程序 里介绍的步骤,通过ABAP Development Tools连接SAP云平台 ABAP运行环境的一个实例,完成登录后,后续的操作步骤,同使用ABAP Development Tools连接一个On-Premises ABAP系统,几乎没有差别。

 

 

下图是在云上的ABAP环境里,允许我们创建的ABAP对象列表,既有ABAP开发人员感到亲切的ABAP字段对象,ABAP开发包,ABAP消息类等等,也有上了云端之后的新面孔,比如Cloud Communication Management和Cloud IAM等。
为了完成在On-Premises的SICF事务码里的开发工作,现在我们要在云上的ABAP环境里创建一个新的HTTP Service:

 

 

新建一个名为ZHELLOWORLD的service,创建完毕之后界面如下:

 

 

ABAP老司机们看到这界面,立即知道下一步怎么做了吧。点击Handler class,就可以进入ABAP类的编辑界面,实现这个HTTP服务的业务逻辑。而通过url字段里维护的值,我们可以在PC或移动设备里,浏览器或代码里访问这个服务。
该服务实现类和On-Premises的区别,不过是接口名称从IF_HTTP_EXTENSION换成了IF_HTTP_SERVICE_EXTENSION. 当然,前者因为是直接在云端编写的ABAP代码,所以还要遵循Jerry之前的文章 在SAP云平台ABAP编程环境上编写第一段ABAP程序 里提到的那些限制。

 

 

上述的ABAP代码只是简单地返回给消费者一个Hello World的文本信息,保存激活之后,把url贴到浏览器里,就能看到期望的Hello World:

 

 

我们从url里,容易得出这样的结论,SAP Cloud Platform ABAP运行环境里支持创建的HTTP服务,其实现原理,其实就是在Netweaver服务器的SICF路径/sap/bc/http/sap/下面增加一个新的节点罢了,只是这个操作,在云端不再需要由ABAP开发人员手动完成,云端的ABAP环境,会自动创建这一底层设施。
希望传统ABAP开发人员,能从这个最简单的Hello World级别的例子,体会到云端ABAP开发的便利之处。感谢阅读。

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

 

 

0
0
分享到:
评论

相关推荐

    SAP ABAP 通用接口日志&restful 动态调用FM

    在SAP ABAP环境中,通用接口日志和RESTful动态调用FM是两个重要的概念,它们在企业级应用开发中发挥着关键作用。本文将详细阐述这两个知识点,并结合RESTful服务,探讨它们如何协同工作。 首先,让我们了解SAP ABAP...

    ABAP开发从入门到精通-高清自学版 SAP+ABAP开发从入门到精通 SAP开发自学必读 SAP SAP开发自学入门到精通

    在实际项目中,ABAP开发者还需要了解SAP的其他组件,如ABAP对象服务(ABAP Objects)、Web Dynpro(用于创建Web应用程序)和ABAP工作流。此外,还有ABAP测试和调试技巧,以及如何使用ABAP Development Tools(ADT)...

    abap-platform-refscen-flight:SFlight又回来了! 这是ABAP RESTful编程模型的飞行参考方案

    ABAP RESTful应用程序编程模型的ABAP飞行参考方案ABAP RESTful应用程序编程模型定义了用于在SAP BTP ABAP环境和Application Server ABAP上对SAP HANA优化的Fiori应用程序进行有效的端到端开发的体系结构。...

    ABAP QUERY报表开发

    ABAP QUERY报表开发 ABAP QUERY报表开发是SAP系统中的一种报表开发工具,通过ABAP QUERY开发报表可以快速生成报表,满足业务需求。本文将详细介绍ABAP QUERY报表开发的步骤和相关截图实例。 报表开发步骤 1. 输入...

    SAP ABAP 开发环境和开发工具介绍

    SAP ABAP 开发环境和开发工具介绍 SAP ABAP 开发环境和开发工具是 SAP 系统中最重要的组件之一,它提供了一个强大的开发平台,允许开发者创建、测试和部署 ABAP 程序。ABAP 是 SAP 系统中的主要编程语言,用于开发...

    SAP ABAP 实用程序开发攻略

    《SAP ABAP实用程序开发攻略》这篇文档主要向初学者介绍了SAP ABAP语言以及其在SAP系统开发中的应用,涵盖从基础知识到数据类型和开发工具的详细解释。 首先,文档开篇提到SAP技术架构及发展历程,这为读者提供了一...

    ABAP_HR开发总结

    ### ABAP_HR开发总结 #### 一、信息类型的概述 **信息类型**是SAP HR模块中的核心数据单元,用于记录和维护员工的各种详细信息。这些信息包括但不限于薪资细节、工作经历、教育背景等。根据不同的创建方式,信息...

    ABAP 报表开发实例

    ABAP 报表开发实例 ABAP 报表开发实例是指使用 ABAP 语言开发报表的实践过程。在这个实例中,我们将一步步地讲解如何开发一个报表,从确定所需表开始,到定义内表和数据,接着是选择屏幕、查询数据、输出结果等步骤...

    ABAP/4开发宝典中文版

    ABAP/4开发宝典中文版是关于ABAP/4编程语言的手册。其目的在于: · 向新的ABAP/4程序员提供从基本语言组件到复杂报表和事务编码的全面指导 · 向资深ABAP/4程序员提供解决特殊问题的参考方案 为满足这些需求,特...

    sapabap开发从入门到精通

    资源名称:sap abap开发从入门到精通 内容简介: 《SAP ABAP开发从入门到精通》以应用实例的形式,讲解了SAPABAP开发的相关知识点,详细介绍了SAPABAP开发者必须掌握的包与变更传输系统(CTS)、数据类型、数据库...

    abap/4 开发宝典中文版

    ABAP/4是SAP公司的一种编程语言,主要用于开发企业级的应用系统,尤其是在SAP R/3和SAP NetWeaver平台上。这个“ABAP/4 开发宝典中文版”是一个面向初学者的入门教程,尽管较老,但ABAP语言的核心特性变化不大,因此...

    abap-ALV.rar_ABAP系统ALV_abap_abap开发alv

    标题“abap-ALV.rar_ABAP系统ALV_abap_abap开发alv”暗示我们将深入探讨ABAP ALV的使用,特别是在ABAP系统中的应用以及如何进行开发。 描述中提到“ABAP ALV总结,ALV格式,REUSE_ALV_GRID_DISPLAY_LVC函数使用”,...

    abap4开发宝典中文版

    ABAP/4开发宝典中文版是关于ABAP/4编程语言的手册。其目的在于: · 向新的ABAP/4程序员提供从基本语言组件到复杂报表和事务编码的全面指导 · 向资深ABAP/4程序员提供解决特殊问题的参考方案 为满足这些需求,特...

    ABAP∕4 开发宝典中文版

    ABAP/4开发宝典中文版是关于ABAP/4编程语言的手册。其目的在于: · 向新的ABAP/4程序员提供从基本语言组件到复杂报表和事务编码的全面指导 · 向资深ABAP/4程序员提供解决特殊问题的参考方案 为满足这些需求,特...

    【SAP ABAP开发】 ALV报表开发教程

    ### SAP ABAP开发中的ALV报表开发教程 #### 一、引言 在SAP ABAP开发中,ALV(Application List Viewer)是一种用于展示数据列表的强大工具,它提供了丰富的功能来满足各种业务需求,例如排序、筛选、分组等。本...

    ABAP GIT 项目 AI SDK FOR ABAP 代码

    2. **ABAP RESTful Programming Model (RPMB)**:为了与AI服务通信,开发者可能需要使用ABAP RESTful Programming Model创建和调用RESTful服务。RPMB提供了一种基于HTTP和JSON的标准方法,使ABAP应用能与其他系统...

    SAP_ABAP_WebDynpro开发(中文)(官方文档)

    SAP ABAP WebDynpro开发是基于SAP的NetWeaver技术平台上的一个重要开发工具。WebDynpro是SAP的Web应用框架,它允许开发人员通过ABAP编程语言创建交互式的Web界面和后台逻辑。它代表了SAP在企业级Web应用开发方面的...

    ABAP 4程序开发

    ABAP 4程序开发是SAP R/3系统中的核心开发技术,它是一种高级商业应用程序编程语言,用于构建和定制企业级业务解决方案。学习ABAP/4对于理解并扩展SAP R/3系统的功能至关重要。这个领域涉及多个层面的知识点,包括...

    ABAP用户指南(SAP ABAP开发)

    - **RESTful服务**:支持RESTful服务,方便与其他现代应用进行交互。 - **JSON处理**:ABAP支持JSON数据格式的处理。 #### 七、ABAP性能优化 - **代码分析**:使用ABAP的性能分析工具对代码进行检查,找出潜在的...

    SAP ABAP开发从入门到精通

    《SAP ABAP开发从入门到精通》以应用实例的形式,讲解了SAP ABAP开发的相关知识点,详细介绍了SAP ABAP开发者必须掌握的包与变更传输系统(CTS)、数据类型、数据库、模块化程序、内表、调试、ABAP数据字典、锁对象...

Global site tag (gtag.js) - Google Analytics