Boa tarde!
Estou precisando vincular alguns usuários em um determinado papel via ws dentro de um serviço de tarefa pelo método updateColleaguewithDependencies da classe ECMColleagueService mas não consigo utilizar o mesmo, sempre retorna o seguinte erro: InternalError: Can't find method com.sun.proxy.$Proxy2242.updateColleaguewithDependencies(string,string,string).
var colleagueServiceProvider = ServiceManager.getServiceInstance( "ECMColleagueService" );
var colleagueServiceLocator = colleagueServiceProvider.instantiate( "com.totvs.technology.ecm.foundation.ws.ECMColleagueServiceService" );
var colleagueService = colleagueServiceLocator.getColleagueServicePort();
colleagueService.updateColleaguewithDependencies( "usuário", "senha", "empresa" );
Alguém saberia me ajudar ?
Alesancoaam, Bom dia!
Pelo SoapUI está dando certo?
Sim, pelo SOAPUI funciona.
Alesan, você precisa passar os parâmetros completos. Em quantidade e tipo, veja que a documentação fala em 6 parâmetros:
Parâmetros:
1 - username: login do usuário.
2 - password: senha do usuário.
3 - companyId: código da empresa.
4 - colleagues: usuários.
5 - grupos: grupos.
6 - papeis: papéis.
Enquanto sua chamada só contempla 3, e ainda assim, sendo 3 strings. O método tem a seguinte assinatura e tipos de dados:
createColleaguewithDependencies(String username, String password, int companyId, ColleagueDto[] colleagues, GroupDto[] grupos, WorkflowRoleDto[] papeis)
Segue a documentação:
https://tdn.totvs.com/pages/releaseview.action?pageId=73084007
Sim, já havia olhado a documentação sobre esses parâmetros. Mas o problema é que mesmo passando todos os parâmetros, o erro persiste. Segue o erro passando os parâmetros conforme documentação: “InternalError: Can’t find method com.sun.proxy.$Proxy2244.updateColleaguewithDependencies(string,string,string,com.totvs.technology.ecm.foundation.ws.ColleagueDtoArray,com.totvs.technology.ecm.foundation.ws.GroupDtoArray,com.totvs.technology.ecm.workflow.ws.WorkflowRoleDtoArray)”.
Alecsandro, volto a chamar atenção pro tipo, precisa fazer as conversões, pela mensagem do erro você está mandando: string, string, string, ColleagueDtoArray, GroupDtoArray e WorkflowDtoArray) seu terceiro parâmetro, referente a empresa tá sendo passando como String e na documentação diz que tem que ser Int. Ou seja, o código da empresa.
Isso resolve seu problema, além disso, peço que lembre-se, caso a resposta esteja correta, marque-a como correta, pode ser a dúvida de outros usuários. Qualquer dúvida, é só responder aos comentários.