Ibm mobilefirst worklight.js中的“in”操作数配置文件无效
我有两个Worklight应用程序,一个项目中有一个SQL适配器。第一个应用程序是客户端应用程序,工作非常好。第二个是使用相同SQL适配器的管理应用程序。它们还调用相同的过程,该过程生成SQL语句并返回结果。但是当从控制器应用程序初始化过程时,我得到一个错误:Ibm mobilefirst worklight.js中的“in”操作数配置文件无效,ibm-mobilefirst,worklight-adapters,Ibm Mobilefirst,Worklight Adapters,我有两个Worklight应用程序,一个项目中有一个SQL适配器。第一个应用程序是客户端应用程序,工作非常好。第二个是使用相同SQL适配器的管理应用程序。它们还调用相同的过程,该过程生成SQL语句并返回结果。但是当从控制器应用程序初始化过程时,我得到一个错误: TypeError: invalid 'in' operand profile worklight.js:4039 适配器程序: var selectStatement = WL.Server.createSQLStatement("s
TypeError: invalid 'in' operand profile worklight.js:4039
适配器程序:
var selectStatement = WL.Server.createSQLStatement("select TITLE, BODY, DATE from MESSAGES where DATE>?");
function getMessages(param1) {
return WL.Server.invokeSQLStatement({
preparedStatement : selectStatement,
parameters : [param1]
});
}
来自控制器的呼叫:
function getMessages(){
console.log("lala");
var invocationData = {
adapter : 'ClientAdapter',
procedure : 'getMessages',
parameters: ['2014-07-21 00:00:00.000000']
};
WL.Client.invokeProcedure(invocationData, {
onSuccess : success,
onFailure : failure
});
function success(result){
console.log("Successfully gathered Messages");
}
function failure(ErrorObject){
console.log("ERROR: could not get Messages/n" + ErrorObject);
}
}
我不明白那里怎么会有错误,因为老实说,我从来不碰那个文件:我甚至不知道它在我的项目中的位置,在web inspector中,它在两个应用程序中看起来都一样。
唯一的区别是我在contorller应用程序中使用Bootstrap,而不是jquery mobile
有没有办法解决这个问题
诚恳
马克斯
编辑:添加的代码能否添加到sql适配器调用中?此外,您是否在查询中使用IN关键字?Worklight的哪个版本?什么版本的引导?您是否将jQuery包含在引导中?如果是的话,什么版本?请展示同样有效的代码,我对您传递的参数特别感兴趣,我怀疑日期格式可能很重要。worklight.js中报告的错误并不重要,并不意味着这实际上是有缺陷的,这只是发现请求中错误的地方。