【发布时间】:2016-08-03 20:12:38
【问题描述】:
我正在将我的应用程序从 MFP V 7.1 迁移到 MFP V 8.0。我有以下场景,其中我正在构建一个数据对象并使用以下代码将请求从我的客户端发送到 MFP 适配器:
function SearchData(username,name,city){
this.username = username;
this.name = name;
this.city = city;
}
searchData(){
var searchData = new SearchData(getUserId(),name,city);
var dataRequest = new WLResourceRequest('/adapters/MyAdapterName/searchEmployer', WLResourceRequest.GET);
alert('there');
dataRequest.send(searchData).then(
function(response){
console.log('response --> ' + response);
},
function(){
console.log('error response --> ' );
}
);
}
以下是用我的 java 脚本适配器编写的代码:
function searchData(searchData){
try{
WL.Logger.info("Inside searchData() method.");
var input = {
method : 'post',
returnedContentType : 'json',
path : 'rest/search',
body : {
contentType : 'application/json;charset=utf-8',
content : JSON.stringify(searchData)
}
};
var response = MFP.Server.invokeHttp(input);
return response;
}catch(exception){
WL.Logger.error("Inside searchData() method :: " + exception.message);
throw exception;
}
}
每次调用此方法时,都会调用失败函数。我也尝试使用sendFormParameters 方法发送请求,但它返回打印以下错误:
worklight.js:9342 Uncaught Error: Invalid invocation of method WLResourceRequest.sendFormParameters; Form value must be a simple type.
logAndThrowError @ worklight.js:9342
encodeFormParameters @ worklight.js:9727
WLResourceRequest.sendFormParameters @
worklight.js:9685searchEmployer @ VM79:47
onclick @ index.html:1
【问题讨论】:
标签: ibm-mobilefirst mobilefirst-adapters