REST JAVA服务和SAPUI5

时间:2017-09-18 07:03:02

标签: rest sapui5

在我的SAPUI5应用程序中,我们正在尝试从REST服务获取数据。我在SCP驾驶舱中创建了目的地,并在neo-app.json文件中提到了相同的目的地。我成功地通过AJAX调用获取数据。我的问题是:这是从REST服务获取数据的唯一方法。因为Northwind服务我没有使用任何AJAX调用。我只是在neo-app.json文件中提到了我的目的地名,在manifest.json中创建了一个数据源,并使用我创建模型的数据源。但我不能为我的REST服务做同样的事情。在创建数据源时,我收到500内部服务器错误。

谢谢&问候, MS

1 个答案:

答案 0 :(得分:2)

Northwind服务是一种遵循开放数据协议的oData服务。因此,您可以创建一个数据源,可用于在UI5中创建oData模型。 UI5在内部使用data.js,它提供了方便的方法来执行读取,更新,插入或删除等服务请求,因此您不必执行任何AJAX调用并继续操作URL。当您使用任何UI5数据模型(oData / JSON / XML / ResourceModel)时,UI5也会自动管理您的绑定和聚合。

如果您的基于JAVA的服务实现了oData协议,您可以使用它类似于Northwind服务。如果它以JSON或XML形式提供响应,则可以使用JSON模型或XML模型。但是,如果响应采用其他格式,则必须使用AJAX调用,解析数据和数据。最好将它转换为JSON。然后,您可以将其与JSON模型一起使用。

您必须在neo-app.json

中添加目的地
arr = Array();

$('select option:selected').each(function(){
     arr[$(this).parent().attr('name')] = $(this).val();
});

然后在manifest.json

中创建一个模型
{
          "path": "/comments",
          "target": {
            "type": "destination",
            "name": "JAVAJSON",
            "entryPath": "/comments"
          },
          "description": "JAVA based REST API"
}