请。是否有任何想法或建议从SQL适配器调用到另一个SQL适配器不起作用? 我使用WL.Server.invokeProcedure。({adapter:“SQL_Adapter”,过程:“另一个适配器中的过程名称”})。似乎函数不会检查适配器和过程参数的存在,并且即使对于不存在的适配器/过程也可以使用任意字符串。结果始终是从调用返回的未定义对象
我在Windows服务器上使用Worklight 6.1.0.01.20140311-2356 两个适配器工作正常,并定期从客户端设备使用 “服务器”适配器(MS SQL)用于推送通知并定义事件源 “客户端”适配器(DB2)是正常的。
有一段代码:
var result = getAllUsersFromSQLPushNotificationAdapter();
if (result){
WL.Logger.info("test1" + result.isSuccessful); //i got false
WL.Logger.info("test2" + result.errorMessages); //i got undefined
WL.Logger.info("test3 " + result.resultSet); //i got undefined
//result = result["invocationResult"]["resultSet"];
for (var i = 0; i < result.resultSet.length; i++) {
//result[i].Category ";
}
WL.Logger.info("Number of users: " + result.resultSet.length);
}
function getAllUsersFromSQLPushNotificationAdapter(){
return WL.Server.invokeProcedure({
adapter : "CZU_SQL",
procedure : "getAllUsers"});
}
谢谢
答案 0 :(得分:0)
尝试类似下面的内容。在getDataSuccess()
中获取结果并使用它。
var invocationData = {
adapter : 'ADAPTER_NAME',
procedure : 'PROCEDURE_NAME'
};
WL.Server.invokeProcedure(invocationData,{
onSuccess : getDataSuccess,
onFailure : getDataFailure,
});
出于调试目的,请检查成功和失败功能结果。如果您无法调用另一个适配器程序,请从故障功能发布错误。