IBM MobileFirst 7.0 - 适配器调用

Posted

技术标签:

【中文标题】IBM MobileFirst 7.0 - 适配器调用【英文标题】:IBM MobileFirst 7.0 - Adapter Invocation 【发布时间】:2015-09-28 10:12:39 【问题描述】:

我们可以一次向适配器发送多条记录,也可以向适配器发送对象。 这是示例适配器代码:

var addStatement = WL.Server.createSQLStatement("insert into MSS (ENO,ENAME,ESALARY) values (?, ?, ?)");
function addSQLAdapterDemo(param0,param1,param2) 
return WL.Server.invokeSQLStatement(
    preparedStatement : addStatement,
    parameters : [param0,param1,param2]
);

客户端javascript中的Main.js:

$('button#InsertData').on('click', function () 
  var invocationData = 
  adapter : 'SQLAdapterDemo', 
  procedure : 'addSQLAdapterDemo', 
  parameters : [5,'Raj',25000][6,'karan',25000],
  compressResponse: true
;
WL.Client.invokeProcedure(invocationData);

在上面的代码中,我传递了三个参数,我们可以这样发送数据吗?而且我们可以将对象发送到适配器。该对象具有这三个参数。

【问题讨论】:

您是因为您的代码不工作而询问,还是工作但您询问是否可以这样做?有什么问题? @Idan Adar 这对我不起作用。我还想要我们可以将对象发送到适配器的构造。 1) 它是如何失败的?你遇到了什么错误? 2)定义“对象” 在控制台中我得到了类似的错误:响应 [/Offline/apps/services/api/JSONStoreAPI/common/query] 成功:/*-secure- "errors":["Runtime: DB2 SQL错误: SQLCODE=-313, SQLSTATE=07004, SQLERRMC=null, DRIVER=3.61.75。\n执行的查询:\n插入 MSS (ENO,ENAME,ESALARY) 值 (?, ?, ?)"],"isSuccessful" :false,"warnings":[],"info":[]*/ 过程调用错误。运行时:DB2 SQL 错误:SQLCODE=-313,SQLSTATE=07004,SQLERRMC=null,DRIVER=3.61.75。执行查询:插入 MSS (ENO,ENAME,ESALARY) 值 (?, ?, ?) 我从 JSONstore 获得了像这个示例这样的对象示例 [ "_id": 1, "json": , "_id": 2, "json": "name": " vinod”,“年龄”:23 ,“_id”:3,“json”:“年龄”:23,“名称”:“雪佛兰”,“_id”:4,“json”: "age": 23, "name": "yoel" , "_id": 5, "json": "age": 23, "name": "vinod" ] 【参考方案1】:

你可以试试这个代码:

/*---------------------------------
Adapter Code
---------------------------------*/
var addStatement = WL.Server.createSQLStatement("insert into MSS (ENO,ENAME,ESALARY) values (?, ?, ?)");
function addSQLAdapterDemo(allRecords) 

var oneRecord;
for ( var count = 0; count < allRecords.length; count++ )

    oneRecord = allRecords[count];
    WL.Server.invokeSQLStatement(preparedStatement : addStatement,parameters : [oneRecord.id,oneRecord.name,oneRecord.salary]);



/*---------------------------------
Client Code
---------------------------------*/
$('button#InsertData').on('click', function () 

/*Preparing JSON Array*/
    var allRecordJson = [];
    allRecordJson.push("id":"5", "name" : "Raj", "salary" : "25000");
    allRecordJson.push("id":"6", "name" : "Karan", "salary" : "20000");
/*JSON Array Builded*/

  var invocationData = 
  adapter : 'SQLAdapterDemo', 
  procedure : 'addSQLAdapterDemo', 
  parameters : [allRecordJson],
  compressResponse: true
;
WL.Client.invokeProcedure(invocationData);

【讨论】:

以上是关于IBM MobileFirst 7.0 - 适配器调用的主要内容,如果未能解决你的问题,请参考以下文章

我们如何跟踪从 IBM MobileFirst 7.0 发送到 Apple APNS 服务器的推送通知?

IBM MobileFirst 7.0 - 如何禁用自动更新

IBM MobileFirst 项目迁移 6.2.0.1 到 7.0

IBM MobileFirst 7.0,脱机工作示例应用程序不工作

IBM MobileFirst 7.0 - 我们如何生成 .ipa 文件?

iFix 之后的 IBM MobileFirst 7.0 Windows8 App 连接问题