无法在IBM worklight中调用过程

时间:2014-04-23 17:34:00

标签: javascript windows-phone-8 ibm-mobilefirst worklight-adapters

我正在使用worklight为wp8开发应用程序。我在使用SQLAdapter时遇到了麻烦。

在我的SQLAdapter.xml文件中:

<procedure name="checkUser"/>

当我部署并调用它时,它运行良好。

但是当我从我的js文件中调用它时。

function checkUser(username){

var invoData = {
        adapter : 'SQLAdapter',
        procedure : 'checkUser',
        parameters : [username]
    };
alert("OK1");
WL.Client.invokeProcedure(invoData,{
    onSuccess : checkUserSuccess,
    onFailure : checkUserFailure
});
alert("OK2");

}

function checkUserSuccess(result){
alert("check Success");
WL.Logger.debug("load data success");
var invocationResult = result.invocationResult;
var isSuccessful = invocationResult.isSuccessful;
if (true == isSuccessful) {
    var result = invocationResult.resultSet;
    alert(result.length);
}else{
    alert("Try again later...");
}

}

function checkUserFailure(result){
alert("Sorry ! No connection found...");
WL.Logger.debug("load data fail");

}

它只提醒OK1,而不提示OK2,WL.Client.invokeProcedure有问题,但我不知道如何修复它。任何人都可以帮助我??

编辑: 我找到了原因:我从默认的js文件中调出它。当我复制到index.js时,它运行正确。

1 个答案:

答案 0 :(得分:0)

您可以尝试设置超时:

 WL.Client.invokeProcedure(invoData,{
     onSuccess : checkUserSuccess,
     onFailure : checkUserFailure,
     timeout:30000 });

的问候,