Java 承载的自定义服务中存在错误
我正在尝试使用Java 承载的自定义服务中存在错误,java,swift,backendless,Java,Swift,Backendless,我正在尝试使用后台中的托管自定义服务 我创建了一个自定义的jar库,并将其上传到backhandle托管的自定义服务,但当我尝试使用Swift中的SDK调用它时,它返回了一个错误 我的图书馆如下: SalvarContatosLibrary.java package com.mbaas.service; import com.backendless.Backendless; import com.backendless.servercode.IBackendlessService; impo
后台
中的托管自定义服务
我创建了一个自定义的jar库
,并将其上传到backhandle托管的自定义服务
,但当我尝试使用Swift中的SDK调用它时,它返回了一个错误
我的图书馆如下:
SalvarContatosLibrary.java
package com.mbaas.service;
import com.backendless.Backendless;
import com.backendless.servercode.IBackendlessService;
import java.util.ArrayList;
public class SalvarContatoLibrary implements IBackendlessService {
public boolean salvarContatos(ArrayList<Contato> contato) {
boolean retorno = true;
if(contatos == null || contatos() == 0) {
retorno = false;
} else {
for(Contato contato: contatos) {
Backendless.Persistence.save(contato);
}
}
return retorno;
}
}
Usuario.java
package com.mbaas.service;
import java.util.Date;
/**
* Created by guilhermedupas on 12/07/17.
*/
public class Usuario {
private String nome;
private String foto;
private Date dataNascimento;
private String numeroTelefone;
private String telefoneE164;
private String objectId;
private Date created;
private Date updated;
private String ownerId;
}
我尝试调用该方法,代码如下:
Swift代码
func salvarContato() {
let nomeServico = "SalvarContatoLibrary"
let versaoServico = "1.0.0"
let metodoServico = "salvarContatos"
let contatosNSArray = contatos as! NSArray
backendless?.customService.invoke(nomeServico, serviceVersion: versaoServico, method: metodoServico, args: contatosNSArray as! [Any],
response: { (result: Any?) -> Void in
print(result)
}, error: { (fault: Fault?) -> Void in
print("Erro contatos")
print("Server reported an error to save the User: \(fault)")
})
}
它返回的错误是:
服务器报告了保存用户的错误:可选(错误='0'[异常类:“CodeRunnerException”{Msg:“参数数目错误”,原因:“无”}])
更新:
否,contatosnarray
不为空
我现在尝试将contatos
转换为NSMutableArray
contatosnmutablearray=contatos as!NSMUTABLEARRY
它停止了重新调整我的错误,但它以数字形式返回响应
0
,并且它没有保存数据。此答案来自后台支持:
版本3的Swift代码生成无法正常工作
我建议采取以下办法:
func salvarContato() {
let nomeServico = "SalvarContatoLibrary"
let versaoServico = "1.0.0"
let metodoServico = "salvarContatos"
let contatosNSArray = contatos as! NSArray
backendless?.customService.invoke(nomeServico, serviceVersion: versaoServico, method: metodoServico, args: contatosNSArray as! [Any],
response: { (result: Any?) -> Void in
print(result)
}, error: { (fault: Fault?) -> Void in
print("Erro contatos")
print("Server reported an error to save the User: \(fault)")
})
}