SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明

在浏览器里访问如下url遇到错误:
https://jerry.sap.corp:44300/...

SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第1张图片

如何debug这个错误,找到哪一行ABAP code抛出的exception?
tcode /IWFND/ERROR_LOG, 选择对应的entry,点Active Source:

SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第2张图片

在自动navigate到的地方设置断点,刷新UI:

SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第3张图片

断点触发,观察callstack :

SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第4张图片

line 51的方法,正常情况下返回的参数ls_bep_metadata应该有填充好的metadata:

SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第5张图片

但是现在遇到了exception:

SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第6张图片

双击lx_exception,点击这个hyperlink能看到具体是哪一行报的error message:

SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第7张图片

line 39抛的error message:

SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第8张图片
SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第9张图片

逻辑就是这个query 2CCSDSLSCONTRIQ不valid。

SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第10张图片
SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第11张图片

设置一个watchpoint:

SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第12张图片
SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第13张图片
SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第14张图片
SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第15张图片

这个FM会基于query生成对应的metadata:

SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第16张图片
SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第17张图片

错误的根源还是在于CDS view 本身的error:

clipboard18

从callstack里能很清楚看到:

SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第18张图片

当更换了另一个CDS view之后,metadata能够成功取回:

SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第19张图片

要获取更多Jerry的原创文章,请关注公众号"汪子熙":
SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明_第20张图片

你可能感兴趣的:(SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来举例说明)