1

我在两个不同的系统上有两个 OData 服务,为此我在 HCP 中添加了目的地并在neo-aap.json文件中添加了条目。

{
    "path": "/sap/opu/odata",
    "target": {
        "type": "destination",
        "name": "ABC",
        "entryPath": "/sap/opu/odata"
    },
    "description": "ABC"
}, {
    "path": "/sap/opu/odata",
    "target": {
        "type": "destination",
        "name": "XYZ",
        "entryPath": "/sap/opu/odata"
    },
    "description": "XYZ"
}

有了这个,我只能访问一个系统的服务,即打开的 OData 服务ABC。当应用程序加载应用程序尝试加载第二个 OData 服务的命中元数据时,ABC显然不存在,因此失败。

如何访问XYZ系统上的 OData 服务?

4

2 回答 2

2

如果“路径”相同,则仅匹配第一个。为您的目的地设置不同的路径。neo-app.json 中的“路径”属性只是您的目的地的别名。使用您的配置,这意味着,无论何时在您的应用程序中,您从“/sap/opu/odata/...”请求某些内容,应用程序将使用您在目标中配置的 URL 覆盖路径的这一部分。

做这样的事情:

{
  "path": "/ABC/sap/opu/odata",
  "target": {
     "type": "destination",
     "name": "ABC",
     "entryPath": "/sap/opu/odata"
  },
  "description": "ABC"
}, {
  "path": "/XYZ/sap/opu/odata",
  "target": {
     "type": "destination",
     "name": "XYZ",
     "entryPath": "/sap/opu/odata"
  },
  "description": "XYZ"
}

然后确保在设置模型数据源时使用“/ABC/sap/opu/odata”或“/XYZ/sap/opu/odata”。

于 2018-02-23T10:23:32.087 回答
1

从我的角度来看,这是一个错误。用于定位目的地的关键是“ path”值,因此您将始终到达第一个目的地。/sap/opu/odata您可以通过将路径更改为来解决此问题,/sap/opu/odata1 然后在 manifest.json 中编辑数据源:在您uri尝试指向第二条路径的任何模型上使用调整后的路径调整“”。

我在这里写过这篇文章,正忙着让 SAP 改变这种行为。

于 2018-02-23T10:08:10.203 回答