1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Urgente Consumir web service com certificado

Discussão em 'Progress 4GL' iniciado por Alexandre Breda Neves, Setembro 15, 2021.

  1. Alexandre Breda Neves

    Alexandre Breda Neves Sem Pontuação

    Olá a todos.
    Sou novo aqui no forum, mas não tão novo em Progress... rs

    Alguém já precisou fazer um programa para consumir um web service com uso de certificado digital (arquivo)?
    Consumir web service não é um problema, mas fazer isso com certificado é uma missão.
    Já procurei várias documentações e exemplos, mas ainda não tive sorte.

    Primeiramente, já aviso que construi meu código baseado na documentação automática do Progress (bprowsdldoc).

    De acordo com a documentação (link abaixo), deveríamos usar os parâmetros WSDLAuth, WSDLKeyFile and WSDLKeyPwd na cláusula CONNECT, mas mesmo com isso, não funciona.
    Sempre recebo a mensagem: "Este servico deve usar uma conexao HTTPS Segura! Tente novamente utilizando seu Certificado Digital."

    Abaixo segue meu código e anexo o XML de envio e retorno.
    Sistema operacional: Windows Server 2008 R2 Standard
    Versão do Progress: 11.7.9

    Desde já agradeço.



    DEFINE VARIABLE hWebService AS HANDLE NO-UNDO.
    DEFINE VARIABLE hGnreLoteRecepcaoSoap AS HANDLE NO-UNDO.
    DEFINE VARIABLE gnreDadosMsg AS LONGCHAR NO-UNDO.
    DEFINE VARIABLE processarResponse AS LONGCHAR NO-UNDO.

    CREATE SERVER hWebService.

    hWebService:CONNECT("-WSDLAuth 'ssl' -WSDLKeyFile 'C:\DLC117\certs\mycert.pem' -WSDLKeyPwd 'fmr2021' -WSDL 'http://www.gnre.pe.gov.br/gnreWS/services/GnreLoteRecepcao?wsdl'").

    RUN GnreLoteRecepcaoSoap SET hGnreLoteRecepcaoSoap ON hWebService.

    COPY-LOB FROM FILE "C:\temp\gnre\GNRE_Envio_02003_2021090229227.html" TO gnreDadosMsg.

    RUN processar IN hGnreLoteRecepcaoSoap(INPUT gnreDadosMsg, OUTPUT processarResponse).

    COPY-LOB processarResponse TO FILE "C:\temp\gnre\GNREresponse.xml".

    Arquivos Anexados:

  2. rbaselio

    rbaselio Membro Participativo

    Eu uso um barramento para fazer isso!
    O APIAMAN.
    Configuro ele para fazer a request e consumo dele sem certificado!
  3. Alexandre Breda Neves

    Alexandre Breda Neves Sem Pontuação

    Olá, rbaselio.

    Primeiramente, agradeço por ter respondido.

    Poderia explicar mais sobre esse APIAMAN? É algum programa a ser instalado? Poderia indicar a página da ferramenta?
    Pesquisei a respeito, mas não encontrei nada relevante. Muita coisa com sigla parecida.
  4. Alexandre Breda Neves

    Alexandre Breda Neves Sem Pontuação

    Olá, rbaselio.

    Primeiramente, agradeço por ter respondido.

    Poderia explicar mais sobre esse APIAMAN? É algum programa a ser instalado? Poderia indicar a página da ferramenta?
    Pesquisei a respeito, mas não encontrei nada relevante. Muita coisa com sigla parecida.

Compartilhe esta Página