微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 SAP WebIDE 将 SAP UI5 应用部署到 ABAP 系统时遇到的关于传输请求的错误

有朋友遇到一个在 webide 里部署 SAP UI5 应用到 ABAP Repository 里时出错的问题:

错误消息:

Failed to get transports for the selected package. Request POST /webidedispatcher/destinations/LND500/sap/bc/adt/cts/transportchecks Failed: Forbidden

分析思路

部署目标即存储这个 SAP UI5 应用部署到 ABAP 系统上生成的 BSP 应用的开发包名称为 ZFIORI_DEV, 错误消息的字面意思是,无法取得往这个开发包里写入对象进行存储时需要使用的传输请求(transport Request).

如果我们在 WebIDE 里将 SAP UI5 应用部署到 ABAP 系统的 $tmp 包上,不需要传输请求;如果期望部署到 ABAP 系统后,还能将这个应用进一步传输到其他 ABAP 系统,则传输请求是必须的。

遇到这个问题,首先要明确自己的需求,到底是不是期望 SAP UI5 应用部署到 ABAP 系统上后需要继续传输到其他系统。如果是,可以试着创建一个 ABAP 报表,看保存到开发包 ZFIORI_DEV 时,是否会弹出要求指定传输请求的对话框。

如果想找到在哪一行代码抛出的这个错误消息,可以进入事物码 SICF,

按照路径 sap->bc->adt 找到 ICF 节点,双击,

找到这个节点的 handler class CL_ADT_WB_RES_APP, 然后在其 HANDLE_REQUEST 里设置断点,然后在 webide 里触发部署动作,查看断点是否会触发(可能不会,因为在 WebIDE 里触发部署操作的用户,和在 ABAP 系统里实际执行部署操作的用户,二者可能不是同一个用户)

也可以参考这篇文章Troubleshooting Deployment to an ABAP System from SAP Web IDE,里面提到了一些 WebIDE 部署到 ABAP 系统时经常遇到的一些典型错误

另外在 SAP 帮助文档 里,也提到了 Destination 的 WebIDEUsage 这个字段需要维护的正确值的列表和对应含义介绍。

比如本地通过名叫 LND500 的 Destination 进行部署,那么这个 Destination 必须维护 dev_abap 这个值作为 WebIDEUsage内容

原文地址:https://cloud.tencent.com/developer/article/2185898

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐