【问题标题】:Access OData services from two different system in SAP Web IDE从 SAP Web IDE 中的两个不同系统访问 OData 服务
【发布时间】:2018-02-23 09:48:59
【问题描述】:

我在两个不同的系统上有两个 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"
}

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

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

【问题讨论】:

    标签: sapui5 hana sap-web-ide


    【解决方案1】:

    如果“路径”相同,则只会匹配第一个。为您的目的地设置不同的路径。 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”。

    【讨论】:

      【解决方案2】:

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

      我已经写过这个here 并且正忙着让 SAP 改变这种行为。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-06-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-07-30
        • 1970-01-01
        • 2021-04-06
        • 1970-01-01
        相关资源
        最近更新 更多