尝试在OpenESB 2.3.1软件包中使用NetBeans和Glassfish创建RESTful JavaScript客户端时存在严重错误。 我正在尝试为NetBeans附带的RESTful Customer DB示例创建RESTful JS客户端。
在CustomerDB.js中,init函数为空。
init: function()
{
this.initialized = true;
},
它应该包含资源,如下所示:
init: function()
{
this.resources[0] = new Rest_customerdb_discountcode(this.uri+'/rest.customerdb.discountcode/');
this.resources[1] = new Rest_customerdb_customer(this.uri+'/rest.customerdb.customer');
this.initialized = true;
},
即使手动添加资源,也存在问题。 这条线: var items = resource.getEntities(); 在TestStubs.html内部失败并返回undefined。我怎样才能解决这个问题?
我注意到Rest_customerdb_customer.js中的某一行无法正常工作。
下面,ref.length未定义。如何解决这个问题?
/ *方法findAll与HTTP请求metod GET,其返回类型是Customer * /
的数组findAll: function(uri_)
{
var url = "";
if (uri_ != null && uri_ != undefined) {
url = uri_;
}
var remote = new Rest_customerdb_customerRemote(this.uri);
var c = remote.getJson_(url);
if (c == -1)
{
return -1;
}
var myObj = eval('(' + c + ')');
var result = new Array();
for (var prop in myObj)
{
var ref = myObj[prop];
var j = 0;
for (j = 0; j < ref.length; j++)
{
if (ref[j]['@uri'] != null && ref[j]['@uri'] != undefined)
{
result[j] = new Customer(ref[j], ref[j]['@uri']);
}
else
{
result[j] = new Customer(ref[j]);
}
}
}
return result;
},