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

  2. Anuncie Aqui ! Entre em contato fdantas@4each.com.br

Urgente Web Service Rest em Progress 4GL

Discussão em 'Progress 4GL' iniciado por HumbertoOrtiz, Janeiro 10, 2018.

  1. HumbertoOrtiz

    HumbertoOrtiz Membro Participativo

    Bom dia.
    Algum tem um exemplo , ou material (documentação) de como construir um Web Service tipo REST no progress.
    O meu Web Service deve ser tipo Rest e ficar no Datasul e ser consumido por um serviço externo.

    - O que preciso fazer para publicar ele(disponibilizar para consumo)?

    Obrigado
  2. joelscampos

    joelscampos Membro Participativo

    Segue um resumo genérico.
    Se tiver alguma dúvida, é só falar, pois te ajudo com a dúvida específica.

    Dá para fazer de dois jeitos:

    1)
    Usando o Eclipse:
    cria um projeto no Eclipse, gera o .war do projeto, e deploy o .war no "OE Web Server" do "Progress Explorer" (localhost:9090).
    Este é mais complexo.

    2)
    Usando o Webspeed:
    Cria um .html contendo trechos de código Progress no meio do hmtl, depois compila o .html no "Workshop" (http://server/scripts/cgiip.exe/WService=nome_do_webspeed/workshop).
    Depois é só acessar mandar o GET para o html.
    Esse é mais simples.

    Abaixo um exemplo de webspeed:

    HTML:
    <!DOCTYPE html>
    <html lang="en">
    <head>   
         <title>Página de Teste</title>
        
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
       
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js" crossorigin="anonymous"></script>   
       
        <script type="text/javascript" src="http://www.gstatic.com/charts/loader.js"></script>
        <script type="text/javascript" src="http://www.google.com/jsapi"></script>
       
       
       
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>      
    </head>
    
    <body>
        <script LANGUAGE="SpeedScript">
       
        DEF VAR nm-remetente-aux                    AS CHAR                                 NO-UNDO.
        DEF VAR nm-destinatario-aux                 AS CHAR                                 NO-UNDO.
        DEF VAR ds-assunto-aux                      AS CHAR                                 NO-UNDO.
        DEF VAR ds-mensagem-aux                     AS CHAR                                 NO-UNDO.
    
        nm-remetente-aux = get-value("DE").
        nm-destinatario-aux = get-value("PARA").
        ds-assunto-aux = get-value("ASSUNTO").
        ds-mensagem-aux = get-value("MSG").
       
        {&out} "Dados recebidos:<br>".
        {&out} "De: " + nm-remetente-aux + "<br>".
        {&out} "Para: " + nm-destinatario-aux + "<br>".
        {&out} "Msg: " + ds-mensagem-aux + "<br>".
    
        </script>
       
        <div style="margin: 50px;">
    
           
            <form>
                DE:<br>
                <input type="text" name="DE" required=""><br>
                PARA:<br>
                <input type="text" name="PARA" required=""><br>
                Assunto:<br>
                <input type="text" name="Assunto" required=""><br>
                Mensagem:<br><br>
                <input type="text" name="MSG" required=""><br>
                <input type="submit" value="Enviar">
            </form>
            <br>   
    
        </div>
    
    </body>
    </html>
    
    

Compartilhe esta Página