【问题标题】:Consuming Rest Webservices in Oracle Jet在 Oracle Jet 中使用 Rest Web 服务
【发布时间】:2017-08-24 11:26:56
【问题描述】:

我是 Oracle Jet 的新手。我想要实现的是在 Oracle Jet Table 中使用 Rest Webservices。

那是我的视图模型

 function CustomerViewModel() {
     var self = this;

    self.DeptCol = ko.observable();
    self.datasource = ko.observable();

    self.serviceURL = '/hr/employees/';
    self.parseDept = function(response) {
        return {empno: response['empno'],
            DepartmentName: response['ename'],
            LocationId: response['job'],
            ManagerId: response['hiredate'],
            mgr: response['mgr'],
            sal: response['sal'],
            comm: response['comm'],
            deptno: response['deptno']};
    };
    self.Department = oj.Model.extend({
        urlRoot: self.serviceURL,
        parse: self.parseDept,
        idAttribute: 'empno'
    });

    self.myDept = new self.Department();
    self.DeptCollection = oj.Collection.extend({
        url: self.serviceURL,
        model: self.myDept
    });

    self.DeptCol(new self.DeptCollection());
}

这是我的观点

<table id="table" summary="Department List" aria-label="Departments Table" 
       data-bind="ojComponent:{  
   component:'ojTable',
   data:datasource,
   columns:[  
      {  
         headerText:'empno',
         field:'empno'
      },
      {  
         headerText:'ename',
         field:'DepartmentName'
      },
      {  
         headerText:'job',
         field:'LocationId'
      },
      {  
         headerText:'hiredate',
         field:'ManagerId'
      },
      {  
         headerText:'mgr',
         field:'mgr'
      },
      {  
         headerText:'sal',
         field:'sal'
      },
      {  
         headerText:'comm',
         field:'comm'
      },
      {  
         headerText:'deptno',
         field:'deptno'
      }
   ]
}"> 
</table>

当我测试我的页面时,它没有显示任何错误并且页面是空白的。有人可以帮忙吗? 谢谢

【问题讨论】:

  • 有时会发生这种情况,因为数据解析不正确。能否也显示 Web 服务响应?
  • 我看不到您如何将数据放入datasource。可能缺少一行,
  • 你的问题解决了吗??

标签: javascript rest web-services oracle-jet


【解决方案1】:

请查看以下教程here。 它有两种情况:

  1. 标准 Jquery。
  2. Oracle Jet Common 模型。

在您提供的示例中,您使用的是 Oracle jet Common 模型,该模型非常适合通过 Rest web 服务进行 CRUD 操作。

我建议您也看看 Standard Jquery 场景,它非常有用且易于使用。

希望对您有所帮助。

【讨论】:

    【解决方案2】:

    在您的CustomerViewModel 末尾,您可能会错过实际设置datasource observable:

    self.datasource(new oj.CollectionTableDataSource(self.DeptCol()));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-04
      • 2017-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多