Utilize qualquer Web Service a partir do Progress 4GL

Slides:



Advertisements
Apresentações semelhantes
IFTO ESTRUTURA DE DADOS AULA 05 Prof. Manoel Campos da Silva Filho
Advertisements

Programa das Aulas 20/09/05 - Apresentação da disciplina
1 ANÁLISE E PROJETO NO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PROCESSO: CONCEITO MODELOS DE PROCESSO PROCESSO UNIFICADO HISTÓRIA CARACTERÍSTICAS AS QUATRO.
Palestras, oficinas e outras atividades
Material pedagógico Multiplicar x 5 Clica!
Vamos contar D U De 10 até 69 Professor Vaz Nunes 1999 (Ovar-Portugal). Nenhuns direitos reservados, excepto para fins comerciais. Por favor, não coloque.
Operadores e Funções do LINGO
Investor Relations4Q07 | 1. Investor Relations4Q07 | 2 2.
14/10/09 Uma animação possui: Início; Passo; Fim; 1.
Exercício do Tangram Tangram é um quebra-cabeças chinês no qual, usando 7 peças deve-se construir formas geométricas.
Pesquisa Bibliográfica Disciplina de Metodologia da Pesquisa Profª Tereza Yoshiko Kakehashi 1.
Nome : Resolve estas operações começando no centro de cada espiral. Nos rectângulos põe o resultado de cada operação. Comprova se no final.
Copyright (c) 2003 by Valery Sklyarov and Iouliia Skliarova: DETUA, IEETA, Aveiro University, Portugal.
1 INQUÉRITOS PEDAGÓGICOS 2º Semestre 2003/2004 ANÁLISE GERAL DOS RESULTADOS OBTIDOS 1.Nº de RESPOSTAS ao inquérito 2003/2004 = (42,8%) 2.Comparação.
GESTSOLA v0.1 Trabalho realizado por: Ana Rita Soares Jorge Oliveira Mafalda Oliveira Ricardo Pedrosa Sérgio Tavares.
Sumário Bem ou serviço compósito = dinheiro Exercícios 2 Exercícios 3.
Curso de ADMINISTRAÇÃO
Relações Adriano Joaquim de O Cruz ©2002 NCE/UFRJ
PERSPECTIVA CONCEITUAL
1 MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE) BREVE HISTÓRICO CARACTERÍSTICAS CONCEITOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS MODELAGEM DE ANÁLISE E DE.
Listas Encadeadas Circulares Listas Duplamente Encadeadas
1 Objetos Relacionados a um banco de dados. 2 Introdução Visual Basic dispõe de um conjunto de objetos, que através de suas propriedades e métodos, nos.
Crescimento Econômico Brasileiro : Uma Visão Comparada de Longo Prazo Prof. Giácomo Balbinotto Neto UFRGS.
Crescimento Econômico Brasileiro : Uma Visão Comparada de Longo Prazo Prof. Giácomo Balbinotto Neto UFRGS.
Crescimento Econômico Brasileiro : Uma Visão Comparada de Longo Prazo Prof. Giácomo Balbinotto Neto UFRGS.
Mais sobre classes Baseada no Livro: Deitel&Deitel - C++ How To program Cap. 7 Prentice Hall 1994 SCE 213 Programação Orientada a Objetos, ICMC - USP 2.
ITA - Instituto Tecnológico de Aeronáutica Aula #1.1 – Tutorial de Web Services utilizando o NetBeans 5.5 Disciplina: CE 262 – Ontologias e Web Semântica.
TE 043 CIRCUITOS DE RÁDIO-FREQÜÊNCIA
Aula 4 Nomes, Vinculações, Tipos e Escopos
EXEMPLOS DE ESTRUTURAS PROTENDIDAS
Uniform Resource Identifier (URI). Uniform Resource Identifiers Uniform Resource Identifiers (URI) ou Identificador de Recursos Uniforme provê um meio.
Protocolo HTTP.
Questionário de Avaliação Institucional
Técnica de Contagem.
Provas de Concursos Anteriores
© GfK 2012 | Title of presentation | DD. Month
Renda até 2 SM.
Hamburgo, Alemanha Definir o caminho que irá permitir a Lions Clubs International alcançar o seu potencial pleno como organização.
MECÂNICA - ESTÁTICA Cabos Cap. 7.
1 Celulose.
(CESPE/ Técnico Judiciário do TRT 17ª Região/ES) O Superior Tribunal de Justiça entende que o candidato aprovado em concurso público dentro do limite.
MECÂNICA - DINÂMICA Exercícios Cap. 13, 14 e 17. TC027 - Mecânica Geral III - Dinâmica © 2013 Curotto, C.L. - UFPR 2 Problema
MECÂNICA - ESTÁTICA Vetores Forças Cap. 2.
1 Namespaces. 2 Dados XML são usados para intercâmbio entre organizações XML permite autores de documentos criarem suas próprias tags, definindo a origem.
1 António Arnaut Duarte. 2 Sumário: primeiros passos;primeiros passos formatar fundo;formatar fundo configurar apresentação;configurar apresentação animação.
CATÁLOGO GÉIA PÁG. 1 GÉIA PÁG. 2 HESTIA PÁG. 3.
Veículos e Sustentabilidade Ambiental
Lemas (Sudkamp)  .
MINISTÉRIO DO PLANEJAMENTO Projeto de Lei Orçamentária 2011 Ministro Paulo Bernardo Silva Brasília, novembro de 2010.
Coordenação Geral de Ensino da Faculdade
Projeto Marcas que Eu Gosto 1 PROJETO MARCAS QUE EU GOSTO Estudos Quantitativo de Consumidores Janeiro / 2005.
EXERCÍCIOS PARA GUARDA-REDES
1 Copyright © 2010 The Nielsen Company. Confidential and proprietary. Title of Presentation Copyright © 2012 The Nielsen Company. Confidential and proprietary.
VI Fórum Banco Central sobre Inclusão Financeira
Irradiações 1- Definição 2- Mecânica da Irradiação
C ORROPIOS, C ARDINCHAS E C ÃES G RANDES O LIVRO de José Paixão em imagens – com pistas de leitura propostas por por www.joraga.net.
1 2 Observa ilustração. Cria um texto. Observa ilustração.
SairPróximo Itens de Seleção Probabilidades e Combinatória Cálculo de Probabilidades. Regra de Laplace. ITENS DE SELEÇÃO DOS EXAMES NACIONAIS E TESTES.
SairPróximo Itens de Seleção Probabilidades e Combinatória Cálculo Combinatório. Problemas de Contagem. ITENS DE SELEÇÃO DOS EXAMES NACIONAIS E TESTES.
BPM BUSINESS PROCESS MANAGEMENT Projecto em Informática e Gestão de Empresas Lisboa, 20 de Junho de 2006.
MATRICIAL CONSULTORIA LTDA. PREFEITURA MUNICIPAL DE GARIBALDI 23/10/ : ATENÇÃO Os locais descritos nas planilhas anexas não correspondem ao total.
CALENDÁRIO SEXY Ele & Ela. CALENDÁRIO SEXY Ele & Ela.
1 Aplicações do Fecho Regular. 2 A interseção de uma linguagem livre de contexto e uma linguagem regular é uma linguagem livre de contexto livre de contexto.
Curso: Cerimonial, Protocolo e Eventos
Olhe fixamente para a Bruxa Nariguda
Rio Verde - Goiás - Brasil
Máquina de Turing Universal
Caminhos da Cana Relatório e show de imagens Marcos Fava Neves Prof. FEA/USP Ribeirão Preto Purdue University (2013)
1 - Listas com Acesso Aleatório. 2 - Fila, o Acesso Ordenado (FIFO)
AM020C A interface entre Meio Ambiente, Sociedade e Economia Indicadores de produtividade e empregabilidade da agricultura do Brasil. Aluna Andressa Santos.
Transcrição da apresentação:

Utilize qualquer Web Service a partir do Progress 4GL Luis B. Campos System Engineer

Agenda Introdução Web Service Basics WSDL Analyzer Chamando um Web Service a partir do 4GL Chame Qualquer Web Service a partir do Progress 4GL

Web Service Client Disponível no OpenEdge® 10.0A AppServer não é necessário Client de uma aplicação diferente Chame Qualquer Web Service a partir do Progress 4GL

Web Services – Por que? Conectividade heterogênea Na arquitetura SOA eles tornam os serviços distribuídos possíveis Denominador comun menor que o EDI ou CORBA Chame Qualquer Web Service a partir do Progress 4GL

Web Services – Por que? Provedores de Web service disponíveis Produtos: OpenEdge, Oracle, IBM DB/2, SalesForce.com, etc. Serviços: Google, e-Bay, Commonwealth of Massachusetts, etc. Plataformas de Desenvolvimento: OpenEdge, .NET™, J2EE, Apache, WebSphere. Chame Qualquer Web Service a partir do Progress 4GL

Web Services – Por que não? Pode não ser eficiente Pode não estar disponível Chame Qualquer Web Service a partir do Progress 4GL

Web Service Basics - Onde? OpenEdge Reference Architecture Usuários Camada de Apresentação Camadas de Serviços de Negócio Camadas de Acesso a Dados Fontes de Dados Gerenciadas Fontes de Dados Não Gerenciadas Serviços Empresariais Camada de Integração Chame Qualquer Web Service a partir do Progress 4GL

Agenda Introdução Web Service Basics WSDL Analyzer Chamando um Web Service a partir do 4GL Chame Qualquer Web Service a partir do Progress 4GL

Web Service Basics – SOAP Message imple O bject A ccess P rotocol Envelope Body Header Header Entry … Body Entry Header opcional Entradas podem ser SOAP Faults (erros) Chame Qualquer Web Service a partir do Progress 4GL

Web Service Basics - WSDL escription L anguage Define Interface Codificação dos dados Transporte Endereço do serviço Contrato entre o client e o server Chame Qualquer Web Service a partir do Progress 4GL

Anatomia de uma Sessão Web Service WSDL Request Um provedor de Web Service WSDL Response OpenEdge 4GL Client SOAP Request SOAP Response SOAP Request SOAP Response Chame Qualquer Web Service a partir do Progress 4GL

Agenda Introdução Web Service Basics WSDL Analyzer Demonstração do Analyzer Chamando um Web Service a partir do 4GL Chame Qualquer Web Service a partir do Progress 4GL

Dicionário 4GL/WSDL 4GL WSDL AppServer™..…......….............Web service Persistent procedure..............Port type (interface) Internal procedure..................Operation Chame Qualquer Web Service a partir do Progress 4GL

Linha de Comando do WSDL Analyzer Gera a documentação 4GL para um web service C:\temp> bprowsdldoc http://api.google.com/GoogleSearch.wsdl google Documentation written to file:///c:\temp\google\index.html C:\temp> Chame Qualquer Web Service a partir do Progress 4GL

Anatomia do Projeto do Client WSDL Request Provedor do Web Service WSDL Analyzer WSDL Response OpenEdge 4GL Client Documentos Gerados Chame Qualquer Web Service a partir do Progress 4GL

Documentos Gerados Service Port type Data types Operation Index conexão & chamada Data types dados complexos Operation Index Chame Qualquer Web Service a partir do Progress 4GL

Snapshots do Analyzer: Documentação do Serviço Chame Qualquer Web Service a partir do Progress 4GL

Snapshots do Analyzer: Documento do Serviço Chame Qualquer Web Service a partir do Progress 4GL

Snapshots do Analyzer : Port Type – Sumário da Conexão Chame Qualquer Web Service a partir do Progress 4GL

Snapshots do Analyzer : Port Type – Sumário da Operation Chame Qualquer Web Service a partir do Progress 4GL

Snapshots do Analyzer : Port Type – Exemplo da Operation Chame Qualquer Web Service a partir do Progress 4GL

Snapshots do Analyzer : Port Type – Parâmetros da Operation Chame Qualquer Web Service a partir do Progress 4GL

Snapshots do Analyzer : Port Type – Exemplo de Parâmetros Complexos Chame Qualquer Web Service a partir do Progress 4GL

Dados Complexos como TEMP-TABLE addCustomers Procedure prototype PROCEDURE addCustomers: DEFINE INPUT PARAMETER TABLE FOR customerList. DEFINE OUTPUT PARAMETER TABLE FOR conflictList. END PROCEDURE. Chame Qualquer Web Service a partir do Progress 4GL

Dados Complexos como TEMP-TABLE Exemplo DEFINE TEMP-TABLE customerList NAMESPACE-URI http://mycompany.com/schemas/customerList NAMESPACE-PREFIX "cust“ FIELD CustNum AS INTEGER FIELD Name AS CHARACTER XML-NODE-TYPE "Attribute“ FIELD Country AS CHARACTER FIELD Comments AS CHARACTER INDEX CustNum IS PRIMARY UNIQUE CustNum INDEX Name Name INDEX Comments IS WORD-INDEX Comments. Chame Qualquer Web Service a partir do Progress 4GL

Dados Complexos como TEMP-TABLE Parâmetros customerList This value is defined as a TEMP-TABLE. This value can also be expressed as a CustomerTable element in The http://mycompany.com/schemas/customerList namespace. As such, this parameter can be passed as a CHARACTER or LONGCHAR value containing an XML document. View example of XML. Chame Qualquer Web Service a partir do Progress 4GL

Agenda Introdução Web Service Basics WSDL Analyzer Chamando um Web Service a partir do 4GL Mapeamento de tipos de dados Conexão e chamada Manipulação do Header Manipulação de Erros Chame Qualquer Web Service a partir do Progress 4GL

Simples Mapeamento de Tipo de Dados XML Schema Data Type Progress 4GL Data Type string CHARACTER boolean LOGICAL decimal DECIMAL integer INTEGER float, double, duration CHARACTER e LONGCHAR podem sempre ser usados Para mapeamentos completos, veja a documentação Chame Qualquer Web Service a partir do Progress 4GL

Dados Complexos Representados de duas formas: LONGCHAR/CHARACTER de documentos XML serializados ProDataSet ou TEMP-TABLE quando possível (10.1A) Analyzer mostra exemplos de ambos. Chame Qualquer Web Service a partir do Progress 4GL

Conexão e Chamada Exatamente como um AppServer CREATE SERVER web-svc-handle. web-svc-handle:CONNECT(“-WSDL wsdl-url ws-connect-parms”). RUN port-type-name SET port-type-handle ON web-svc-handle. RUN operation IN port-type-handle(parameters). CREATE SERVER app-server-handle. app-server-handle:CONNECT(“appserver-connect-parms”). RUN persistent-proc PERSISTENT SET procedure-handle ON app-server-handle. RUN internal-proc IN procedure-handle(parameters). Chame Qualquer Web Service a partir do Progress 4GL

Resultados Google no Browser Chame Qualquer Web Service a partir do Progress 4GL

Exemplo de Conexão Selecionado Chame Qualquer Web Service a partir do Progress 4GL

Exemplos de Conexão e Chamada Colados Chame Qualquer Web Service a partir do Progress 4GL

Definições de Variáveis Chame Qualquer Web Service a partir do Progress 4GL

Connect e Set Port Chame Qualquer Web Service a partir do Progress 4GL

Chamada ao Google Chame Qualquer Web Service a partir do Progress 4GL

Resultado da Pesquisa Utilizando DOM Chame Qualquer Web Service a partir do Progress 4GL

Carga da TEMP-TABLE com os Resultados Chame Qualquer Web Service a partir do Progress 4GL

Resultados no 4GL Client Chame Qualquer Web Service a partir do Progress 4GL

… … Objetos 4GL SOAP Header SOAP-HEADER Envelope Header Header Entry SOAP-HEADER-ENTRYREF … SOAP-HEADER-ENTRYREF … Body Body Entry Chame Qualquer Web Service a partir do Progress 4GL

SOAP Headers Define um callback port-type-handle:SET-CALLBACK-PROCEDURE( “REQUEST-HEADER | RESPONSE-HEADER”,   “request-handler-name”,   web-service-handle). Escreve um callback PROCEDURE request-handler-name: DEFINE INPUT PARAMETER soap-header-handle AS HANDLE. DEFINE INPUT PARAMETER operation-namespace AS CHARACTER. DEFINE INPUT PARAMETER operation-local-name AS CHARACTER. END. Chame Qualquer Web Service a partir do Progress 4GL

Anatomia de um Erro no Web Service WSDL Request Provedor do Web Service WSDL Response OpenEdge 4GL Client SOAP Request SOAP Response (FAULT) Chame Qualquer Web Service a partir do Progress 4GL

4GL SOAP Fault Envelope Body Body Entry fault code fault string fault actor <faultdetail> Chame Qualquer Web Service a partir do Progress 4GL

Fault Objects do 4GL ERROR-STATUS SOAP-FAULT fault info SOAP-FAULT-DETAIL XML Chame Qualquer Web Service a partir do Progress 4GL

SOAP Fault - Faultstring An error was detected while executing the Web Service request. (10893) Chame Qualquer Web Service a partir do Progress 4GL

SOAP Fault - Detail <detail> <errorMessage> msg=The server application returned the error: Invoice not found; targetException=ERROR condition: The Server application has returned an error. (7243) (7211)] </errorMessage> <requestID> 172247e5b58beb30:5bb966:fb4fdb744a:-7fff#9 </requestID> </detail> Chame Qualquer Web Service a partir do Progress 4GL

Web Service ou AppServer? Resumo Chamar um web service é fácil Use o WSDL Analyzer OpenEdge 4GL Client Web Service ou AppServer? SOA-07: Call Any Web Service from the Progress 4GL

Perguntas? Chame Qualquer Web Service a partir do Progress 4GL

Obrigado! Chame Qualquer Web Service a partir do Progress 4GL

Chame Qualquer Web Service a partir do Progress 4GL