无法将SAPUI5应用程序连接到oData服务

2020-08-23 10:11发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,我是开发sapui5应用程序的新手。 我遵循了许多指南,在发布之前,我已经搜索并遵循了许多类似问题(odatametadata错误等)的说明,但是没有成功。 因此,我在这里尝试找出您的帮助,为什么我无法连接到我的OData服务。

我已经创建了一个SAP Cloud Platform业务应用程序来生成我的"客户" OData模型和服务。

在我的Cloud Foundry试用实例上,我可以看到服务实例及其绑定的应用程序已启动,并且oData URL可以正确访问:

之后,在Neo Trial实例上,我为OData服务创建了一个目的地:

我已通过新的OData服务向导向项目中添加了新的OData服务并对其进行了测试:

完成向导后,我看到这些属性会自动添加到我的项目中("数据源"字段在此处为空,但在代码编辑器中填充是正常的吗?)

在我的webapp项目中,我将这些行放在" neo-app.json"中,以便连接到我的目的地:

 [...],
 {
       " path":"/img/Customers_SVC",
       "目标":{
         " type":"目的地",
         "名称":" Customers_SVC"
       },
       "描述":"客户服务"
     }
 

在" manifest.json"文件中,这些行如下:

在" sap.app"内部:{
 [...]
     "数据源": {
 "客户服务": {
 " uri":"/img/Customers_SVC/odata/v2/CustomerService/",
 " type":" OData",
 "设置":{
 " localUri":" localService/CustomerService/metadata.xml"
 }
 }
     }

 }


 在" sap.ui5"内部:{
 [...]

    "楷模": {
       " CustomersModel":{
 " type":" sap.ui.model.odata.v2.ODataModel",
 "设置":{
 " defaultOperationMode":"服务器",
 " defaultBindingMode":" OneWay",
 " defaultCountMode":"请求"
 },
 " dataSource":" CustomerService",
 " preload":是
 },
 [...]
 } 

现在,当我运行我的应用程序时,总是出现错误:

[ODataMetadata]初始加载元数据失败-

并在Chrome开发者工具的"网络"标签中查看,我看到此请求具有404响应代码:

https://rlzhlbbhm2h1sfxdtazioni-approuter.cfapps.eu10.hana.ondemand.com/SAPCustomersSAPCustomers-1.0.0/odata/v2/CustomerService/$metadata?sap-language=IT

我试图通过列表和表使用OData服务数据,但没有成功。

我该怎么做才能使其正常工作?

谢谢。

(22.0 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,我是开发sapui5应用程序的新手。 我遵循了许多指南,在发布之前,我已经搜索并遵循了许多类似问题(odatametadata错误等)的说明,但是没有成功。 因此,我在这里尝试找出您的帮助,为什么我无法连接到我的OData服务。

我已经创建了一个SAP Cloud Platform业务应用程序来生成我的"客户" OData模型和服务。

在我的Cloud Foundry试用实例上,我可以看到服务实例及其绑定的应用程序已启动,并且oData URL可以正确访问:

之后,在Neo Trial实例上,我为OData服务创建了一个目的地:

我已通过新的OData服务向导向项目中添加了新的OData服务并对其进行了测试:

完成向导后,我看到这些属性会自动添加到我的项目中("数据源"字段在此处为空,但在代码编辑器中填充是正常的吗?)

在我的webapp项目中,我将这些行放在" neo-app.json"中,以便连接到我的目的地:

 [...],
 {
       " path":"/img/Customers_SVC",
       "目标":{
         " type":"目的地",
         "名称":" Customers_SVC"
       },
       "描述":"客户服务"
     }
 

在" manifest.json"文件中,这些行如下:

在" sap.app"内部:{
 [...]
     "数据源": {
 "客户服务": {
 " uri":"/img/Customers_SVC/odata/v2/CustomerService/",
 " type":" OData",
 "设置":{
 " localUri":" localService/CustomerService/metadata.xml"
 }
 }
     }

 }


 在" sap.ui5"内部:{
 [...]

    "楷模": {
       " CustomersModel":{
 " type":" sap.ui.model.odata.v2.ODataModel",
 "设置":{
 " defaultOperationMode":"服务器",
 " defaultBindingMode":" OneWay",
 " defaultCountMode":"请求"
 },
 " dataSource":" CustomerService",
 " preload":是
 },
 [...]
 } 

现在,当我运行我的应用程序时,总是出现错误:

[ODataMetadata]初始加载元数据失败-

并在Chrome开发者工具的"网络"标签中查看,我看到此请求具有404响应代码:

https://rlzhlbbhm2h1sfxdtazioni-approuter.cfapps.eu10.hana.ondemand.com/SAPCustomersSAPCustomers-1.0.0/odata/v2/CustomerService/$metadata?sap-language=IT

我试图通过列表和表使用OData服务数据,但没有成功。

我该怎么做才能使其正常工作?

谢谢。

(22.0 kB)
付费偷看设置
发送
3条回答
路亽曱_Ryan
1楼-- · 2020-08-23 10:49

另一个问题:您是否也在Cloud Foundry中创建了Customer_SVC目标(不仅仅是在Neo环境中)?

一只江湖小虾
2楼-- · 2020-08-23 10:28

否,我还没有创建 Cloud Foundry中的Customer_SVC目标也是如此,因为在我读过的所有指南中,没有人提到有两个目标,而在Neo Environment中只有一个。

只是为了更好地了解它是如何工作的,为什么我需要Cloud Foundry中的第二个目的地?

无论如何,在您提出建议后,我也在Cloud Foundry中创建了相同的目的地,因此我能够从Web应用程序访问OData服务。

非常感谢您的时间和帮助,我非常感谢。

追夢秋陽
3楼-- · 2020-08-23 10:45

Neo的目的地仅是WebIDE,因为它仍在运行 在Neo。 在Cloud Foundry中,未使用Neo目标服务,因此您需要Cloud Foundry目标服务(您在mta.yaml文件中看到绑定定义-destination类型的服务)。 不好,但是到目前为止是必需的。

一周热门 更多>