使用 SAP Fiori Tools 部署 SAP UI5 应用到 ABAP 服务器时遇到的各种错误和解决办法

简介: 使用 SAP Fiori Tools 部署 SAP UI5 应用到 ABAP 服务器时遇到的各种错误和解决办法

错误1

(node:28340) UnhandledPromiseRejectionWarning: TypeError: Cannot read property ‘customMiddleware’ of undefined

at handleABAP (C:\Code\UI5\Walkthrough\35\node_modules@sap\ux-ui5-tooling\dist\cli\cmd\add-deploy-config.js:113:29)


5e23621d3f7549d98d881c6b625c98a3.png


错误原因:使用的 Fiori tools CLI 版本过低所致。


“@sap/ux-ui5-tooling”: “1.0.10”

dc14166842ec5e7fa38ba13140c2d90c.png

https://www.npmjs.com/package/@sap/ux-ui5-tooling


3fe361aafbae11df1df3ddde1e161bf6.png

解决办法:使用最新的 1.4.7 版本:


3c756b442acdea91887ab70d47eaf382.png

错误消息2

Error: Cannot find proxy middleware config in [C:\Code\UI5\Walkthrough\35\ui5.yaml]

at f (C:\app\node-v12.18.3-win-x64\node_modules@sap\generator-fiori\generators\deployment-generator\abap\index.js:2:616172)

at Object.r.handleErrorMessage (C:\app\node-v12.18.3-win-x64\node_modules@sap\generator-fiori\generators\deployment-generator\abap\index.js:2:616358)

1100dc678ed2f89f3f9b471a67d0a604.png

错误原因:ui5.yaml 文件内容不全。


至少应该包含 fiori-tools-proxy 区域。

70b31c510a7bd49e7c1d38bdbcbd92c3.png

参考一个格式正确的 ui5.yaml:

specVersion: '1.0'
metadata:
  name: 'project1'
type: application
ui5Theme: sap_fiori_3
server:
  customMiddleware:
  - name: fiori-tools-proxy
    afterMiddleware: compression
    configuration:
      ignoreCertError: false # If set to true, certificate errors will be ignored. E.g. self-signed certificates will be accepted
      backend:
      - path: /sap/opu/odata
        url: http://localhost
      ui5:
        path: 
        - /resources
        - /test-resources
        url: https://ui5.sap.com
        version:  # The UI5 version, for instance, 1.78.1. Empty means latest version
  - name: fiori-tools-appreload
    afterMiddleware: compression
    configuration:
     port: 35729
     path: webapp

错误消息3

info builder:custom deploy-to-abap Create Archive

info builder:custom deploy-to-abap Starting Deployment.on project1 � (11/11) Running task deploy-to-abap…

WARN builder:custom deploy-to-abap Connecting without any credentials, deployment may fail if authorization is required

ERR! builder:custom deploy-to-abap Deployment Failed.tion project1 � (11/11) Running task deploy-to-abap…

ERR! builder:custom deploy-to-abap getaddrinfo ENOTFOUND aa


原因是 ui5-deploy.yaml 文件中 deploy-to-abap 这个自定义 task 的 target, 即远端 ABAP 系统的 url 维护不正确。

120d0d7cbcf1848631cf7d734b38c66c.png

1ed23320d9a6e3a6cdb38e04aff7bb8f.png

如果看到上图所示的提示消息:


The deployment destination requires authentication. Please enter your credentials below

? Username:


说明 ABAP 系统连接成功。


错误消息4

Upload canceled, archive could not be read or appears to be empty

378d17a60f704da4d1d9fcb1df782586.png

错误消息和这个帖子介绍的一致。


这个错误和 SAP UI5 tools 的版本有关。


使用 generator-easy-ui5 创建的 SAP UI5 项目,SAP UI5 tools 的默认版本号如下图所示:


86c9ea62fb256959b9e7fd034b1ec7ec.png

"devDependencies": {
        "@ui5/cli": "^2.11.1",
        "@ui5/fs": "^2.0.6",
        "@ui5/logger": "^2.0.1",
        "@sap/ux-ui5-tooling": "1",
        "rimraf": "3.0.2"
    },
    "ui5": {
        "dependencies": [
            "@sap/ux-ui5-tooling"
        ]
    }

解决方案:删除 package-lock.json 文件和 node_modules 文件夹,


执行命令行安装最新版本:


npm install @sap/ux-ui5-tooling@latest

da0be169acb8549ff54bfc6f625c5c39.png

成功安装的版本号:1.4.7

129c913587192e8831e99f3de42c38da.png

将 package.json 文件里的 deploy 脚本命令更改为:


npm run build && fiori deploy --config ui5-deploy.yaml


7b0fea0898032767de3ac8167c513650.png

重新执行 npm run deploy 即可:

db77b457806c4875db5aa9c2ab9ab54e.png

错误消息5

Remote creation in customer namespace not possible in SAP systems

eee16e67ab0f1313ceaba9f483aea9f4.png

解决办法是,提前在 ABAP 系统 ER9 手动创建好 BSP 应用即可:

0fb06ea07293965a4513add5de65d28e.png

b12e2c9ee349bab36e6fad4d94096901.png


另一种方法,参考这个链接。

相关文章
|
17天前
|
监控 安全 Linux
RHEL 环境下 Subversion 服务器部署与配置
【10月更文挑战第18天】在RHEL环境下部署Subversion服务器需依次完成安装Subversion、创建版本库、配置服务器、启动服务、客户端连接及备份维护等步骤。确保遵循安全最佳实践,保障数据安全。
|
21天前
|
Prometheus Kubernetes 监控
k8s部署针对外部服务器的prometheus服务
通过上述步骤,您不仅成功地在Kubernetes集群内部署了Prometheus,还实现了对集群外服务器的有效监控。理解并实施网络配置是关键,确保监控数据的准确无误传输。随着监控需求的增长,您还可以进一步探索Prometheus生态中的其他组件,如Alertmanager、Grafana等,以构建完整的监控与报警体系。
109 60
|
22天前
|
Prometheus Kubernetes 监控
k8s部署针对外部服务器的prometheus服务
通过上述步骤,您不仅成功地在Kubernetes集群内部署了Prometheus,还实现了对集群外服务器的有效监控。理解并实施网络配置是关键,确保监控数据的准确无误传输。随着监控需求的增长,您还可以进一步探索Prometheus生态中的其他组件,如Alertmanager、Grafana等,以构建完整的监控与报警体系。
128 62
|
7天前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
84 2
|
7天前
|
NoSQL Linux PHP
|
8天前
|
弹性计算 数据库连接 Nacos
阿里云ECS服务器在docker中部署nacos
docker pull nacos 失败,docker部署nacos遇到的问题,nacos数据库连接,nacos端口映射
45 1
|
14天前
|
监控 网络安全 调度
Quartz.Net整合NetCore3.1,部署到IIS服务器上后台定时Job不被调度的解决方案
解决Quartz.NET在.NET Core 3.1应用中部署到IIS服务器上不被调度的问题,通常需要综合考虑应用配置、IIS设置、日志分析等多个方面。采用上述策略,结合细致的测试和监控,可以有效地提高定时任务的稳定性和可靠性。在实施任何更改后,务必进行充分的测试,以验证问题是否得到解决,并监控生产环境的表现,确保长期稳定性。
28 1
|
18天前
|
安全 Linux 数据安全/隐私保护
RHEL 环境下 Subversion 服务器部署与配置
【10月更文挑战第17天】在RHEL环境下部署Subversion服务器包括安装Subversion、创建和配置版本库、启动服务器、客户端连接以及备份与恢复等步骤。通过这些步骤,可确保服务器的安全性和稳定性,满足版本控制需求。
|
21天前
|
SQL 分布式计算 大数据
大数据-168 Elasticsearch 单机云服务器部署运行 详细流程
大数据-168 Elasticsearch 单机云服务器部署运行 详细流程
43 2
|
19天前
|
前端开发 Java Shell
后端项目打包上传服务器部署运行记录
后端项目打包上传服务器部署运行记录
22 0