Integração com G5 – Webservice Customizado

  • Rodrigo Lima
    Participante
    # 5 anos, 5 meses atrás

    Boa tarde!

    Estamos com dificuldades na implementação da integração com a G5 utilizando a opção do serviço customizado. Abaixo alguns detalhes:

    – O webservice foi desenvolvido e está publicado no Glassfish do cliente.
    – A API de integração está publicada no Glassfish do cliente.
    – No console de webservices da G5 é possível visualizar as requisições chegando e sendo executadas com sucesso.

    Porém no BPM, quando o datasource é chamado, é apresentada uma mensagem de erro e os dados não são carregados. O erro apresentado é: “java.lang.ClassCastException”. Em outras oportunidades a mensagem apresentada era diferente: “…. cannot be cast to class …. are in unnamed module of loader ‘app’.”

    COmo a requisição está chegando na G5, pois é possível verificá-la no console, entendemos que o problema esteja relacionado com o formato do retorno do serviço customizado. Testamos os seguintes formatos de JSON no retorno, porém sem sucesso:

    [{“colaboradoresJSON”:{“NumCad”:1,”NomFun”:”Nome Colaborador”}}]
    {“colaboradoresJSON”:[{“NumCad”:1,”NomFun”:”Nome Colaborador”}]}
    [{“colaboradoresJSON”:[{“NumCad”:1,”NomFun”:”Nome Colaborador”}]}]
    [{“NumCad”:1,”NomFun”:”Nome Colaborador”}]
    {“NumCad”:1,”NomFun”:”Nome Colaborador”}

    Conseguem passar uma orientação? Ou existe algum exemplo ou documentação mais detalhada a respeito do serviço customizado?

    Obrigado!

    daniel.huebes
    Participante
    # 5 anos, 5 meses atrás

    Boa tarde Rodrigo,

    Com a API de integração, você pode construir o webservice customizado com tabela.
    Veja a imagem abaixo:
    WS-tabela

    A URL ficara semelhante a esta:
    https://server:porta/SXI/G5Rest?server=https://server:porta&module=rubi&service=com.senior.wf.utils&port=getColaborador&DATASOURCEATTRNAME=colaboradores&DEBUG=true

    O cadastro da fonte de dados ficará assim:
    fonte de dados

    Rodrigo Lima
    Participante
    # 5 anos, 5 meses atrás

    Daniel, boa tarde!

    Resolvido!! Obrigado!

    Rodrigo Lima
    Participante
    # 5 anos, 5 meses atrás

    Daniel,

    Ainda sobre a integração com a G5 com serviços customizados. Funcionou inicialmente porque o webservice na G5 estava configurado com forma de logon “Anonimo”, porém não posso deixar dessa forma devido à falta de segurança e também porque preciso capturar o usuário logado nas regras do webservice.

    Quando altero o webservice da G5 para a opção de efetuar logon, no BPM retorna erro código 500 e no log do Glassfish registra a seguinte mensagem: “Ocorreu um erro ao executar o serviço “”: Erro ao executar requisição HTTP (GET): [br.com.senior.asas.sysutils.BaseException] Não foi possível obter uma conexão segura com o servidor.”.

    Consegue indicar o que pode ser?

    Obrigado!!

    daniel.huebes
    Participante
    # 5 anos, 5 meses atrás

    Boa tarde Rodrigo,

    Favor verificar no SeniorConfigCenter as chaves:
    com.senior.g7.identityServerURL = “https://platform.senior.com.br/t/senior.com.br/bridge/1.0/rest/usuarios/userManager/queries/obterMeusDados”
    com.senior.g7.trustedTenant =
    com.senior.g7.validatecertificate = false

    Rodrigo Lima
    Participante
    # 5 anos, 5 meses atrás

    Daniel, boa noite!

    Os dois primeiros parâmetro estavam configurados, o terceiro não. Após criar a chave no SeniorConfigCenter e reiniciar o serviço Middleware, o teste foi bem sucedido!

    Mais uma vez obrigado!

Visualizando 6 posts - 1 até 6 (de 6 do total)

You must be logged in to reply to this topic.