云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

域名解析_数据库简单查询_0元

小七 141 0

在本文中,我们将介绍SCP(sapcloudplatform)Neo Stack中的一个应用程序到cloudfoundry的迁移过程。正在迁移的应用程序是一个内部应用程序,此活动完全是从研究的角度进行的。该港口没有客户参与,也没有业务需要。这个想法是为了说明进行这种迁移所走的道路,并讨论在进行迁移时可以发现的一些常见陷阱。与Neo相比,cloudfoundry有一些实质性的变化,包括应用程序的配置方式、服务的使用方式以及路由和授权的处理方式。为了撰写本文,我们采用了一种简单的迁移方法。在CloudFoundry端提供了替代服务,积分返现,应用程序代码大部分按原样移植。大多数情况下,授权不在本帖的范围内,但它们是在移植代码中添加的。

内容

简介UI5应用程序和Fiori启动板迁移向批准者提供应用程序使用门户和html5应用程序repo服务应用程序如何使用html5应用程序repo构建前端Java后端服务迁移Spring服务是如何迁移的如何迁移HANA DB开放点和今后的工作结论

简介

正在迁移的应用程序是来自圣保罗IBSO团队的内部应用程序,称为团队日历。它的主要功能是为我们的管理层提供完整的团队视图,淘客文案,包括团队成员管理、项目分配信息以及利用率报告。此应用程序主要由管理人员和管理支持人员使用,但是一些功能(如项目分配)最终由团队成员负责。这使得团队日历的特性可以扩展到8个不同的UI5应用程序中,供管理层和员工使用。每一个都是Fiori启动板上的一个单独的平铺,即:

团队日历:供团队成员查看他们的队友项目并编辑他们对项目的分配预订管理:用于管理维护预订项目管理:维护正在进行的项目团队:将团队成员分配给他们的团队团队管理:创建和管理团队个人资料:查看和编辑您自己的个人资料与技能和角色用户管理:用户及其权限的管理视图利用率报告:为了生成利用率报告

所有这些tile都对同一个/api端点执行请求,这是一个Java应用程序,使用Spring作为服务层,Hibernate作为ORM。它使用Java版本7和Neo特定的库。持久层是Neo提供的一个集成的HANA数据库

考虑到这一点,我们决定在我们的端口中使用Portal服务、Spring Boot和cloudfoundry的HANA DB和Schema服务。这不仅对更改下划线配置和配置文件,而且对原始应用程序正在使用的一些库都提出了挑战。

在下面两节中,我们将介绍迁移的细节。在第一节中,描述了前端以及如何在CloudFoundry侧为其设置Fiori启动板。至于第二部分,我们将描述后端服务端口的细节,以及如何使用HANA数据库和模式服务来移植应用程序。

UI5应用程序和Fiori启动板迁移

在本部分中,我们将描述将前端应用程序从Neo迁移到Cloud Foundry所采取的步骤。本节分两个小节提出。首先,描述了这种简单的方法,以及如何使用approuter在cloudfoundry上简单地"运行"应用程序,提出了1:1端口。其次,我们描述了迁移不同UI5应用程序的正确方法,并配置指向每个应用程序的Fiori Launchpad tiles。后一种方法遵循的原则是为客户提供一个中心的Fiori启动平台。因此,建议采用后一种方法。然而,由于通过使用HTML5应用程序repo服务,以及门户和部署程序应用程序,UI5应用程序的配置从Neo上的HTML5应用程序发生了巨大变化,这对端口构成了更大的挑战。

初步分析表明,为了在Cloud Foundry中按原样运行应用程序,唯一需要提供的两件事是:

路线和目的地的定义(从近地天体移动)-应用程序.json至xs-应用程序.json)添加清单.json对于CloudFoundry部署

在提供了必要的配置文件之后,另一个需要注意的问题是:如何显示和访问Fiori应用程序;即如何提供Fiori启动板。在Neo中,通过在一个fioriSandboxConfig.json文件. 显然,对于CloudFoundry环境来说,这是行不通的,特别是因为在CloudFoundry中,我们需要依赖不同的服务来提供启动板配置和应用程序托管。最初采用的方法(后来发现不是最优的)是将approuter作为依赖项引入,并在应用程序级Fiori启动板下为UI5应用程序提供服务。添加应用程序路由器依赖项:

您需要为@SAP packages配置SAP的npm注册表,才能使上述命令工作,如果不工作,请在安装依赖项之前运行以下命令(此处提供更多信息)

2。将开始脚本添加到包.json

3. 创建xs-应用程序.json路由映射到目的地

src:直接到本地/src文件夹下的静态文件。/测试资源和/或资源:使用ui5sdk目标。稍后将指向UI5 CDN。/api:使用api目标。这是我们尚未实现的后端系统。创建清单.yml目标端点

清单.yml是Cloud Foundry的部署文件。这就是我们定义CloudFoundry将使用什么作为其目的地的地方。前端应用程序运行所需的目的地如下:

ui5sdk:作为ui5lib的静态宿主。例如。https://sapui5.hana.ondemand.com/1.38.41/resources/sap-ui-core.js。前端应用程序使用它获取UI5依赖项。

api:这是部署的后端URL。请注意,这段代码是在完全迁移完成后截取的,因此最初我们必须部署后端系统才能在这里完成此操作。

5。Fiori Launchpad Sandbox