Web Services Apresentação para a Febraban. Apresentação Objetivos da apresentação –Demonstrar para stakeholders (particularmente da Febraban) as características.

Slides:



Advertisements
Apresentações semelhantes
Desenvolvimento de Sistemas Distribuídos Web Services
Advertisements

Programação em Java Prof. Maurício Braga
Programação em Java Prof. Maurício Braga
Java Básico Orientação a Objeto Marco Antonio Software Architect Fev/2008.
Web Services Um Web Service é um bloco de software que pode ser acedido pela Internet e usado remotamente por outras aplicações Infra-estrutura para a.
Consumindo e Criando Web Services SOAP em .Net
Conhecendo o VS2008: Windows Forms X Web Forms X Web Services
Passo a Passo Consumo de Serviço SOAP 2º Semestre 2009 > PUCPR > Pós em BD Bruno C. de Paula.
Web Services Passo a passo Consumo de serviço SOAP em Java 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
Web Services Passo a passo Consumo de serviço SOAP em.Net 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
PLATAFORMA J2EE Luís Filipe Almeida Santos
Sistemas Distribuídos Web Services
Interoperabilidade de hardware e software
Introdução aos Serviços Web
Web Services Erika Hmeljevski Estefania Borm Leonardo Malagoli
Área de Desenvolvimento de Sistemas
DAS Sistemas Distribuídos para Automação Industrial
JAVA ENUMS © 2009 by Jorge L. de Souza Leão março de 2009 PEE - COPPE/UFRJ.
Introdução a JDBC Eduardo Martins Guerra Instituto Tecnológico de Aeronáutica Curso de Pós-Graduação em Engenharia de Software Programação Distribuída.
Métodos Programação II 1 Métodos de Programação II (Mestrado Integrado em Engenharia de Comunicações) 1º Ano, 2º Semestre Elementos de Classe, class wrappers.
Tecnologias para Internet
Sistemas Distribuídos
Rodrigo Cristiano Silva
SOA - Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a serviços
JAVA: Conceitos Iniciais
Segurança Aplicações Java EE Utilizando JAAS
Capítulo 2 Java Servlets.
Minicurso PHP – Parte 2 João Paulo Ribeiro jpribeiro.com
Tópicos de Sistemas de Informação A
Web Services Uninorte Semana de Tecnologia da Informação
Integração com Banco de Dados
Programação I Aula 2 (Métodos)
JSP / Servlets Avançado
Banco de Dados de Objetos
Conceitos de J2EE para a WEB
Aula 2 – Primeiros Passos com a arquitetura Web Servidor
CURSO DE EXTENSÃO PROGRAMAÇÃO C# .NET
Prof. Alexandre Monteiro Recife
Professor: Márcio Amador
Aula 2 – Primeiros Passos com a arquitetura Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas.
Implementação MVC Pedro Antonino.
SessionBeans Marco Antonio Arquiteto de Software.
Tecgraf PUC-Rio Setembro de 2013 Introdução ao Openbus.
Da Introdução à Prática
Programação I Aula 3 (Entrada de Dados) Prof. Gilberto Irajá Müller Última atualização 11/3/2009.
Java Kickstart, day 2 Semelhanças com linguagem C.
+ Java Básico Aula 1 por Flávio Juvenal. + Histórico Green Project (1991) Desenvolver plataforma para eletrodomésticos inteligentes Tentaram usar C++
WSJET são serviços que ficam disponíveis na Internet para os clientes autorizados pela Jet Tecnologia, ou seja, são Web Services. Os Web Services são.
Padrões de Interação com o Usuário
Decisão #1 Decisão-chaveUtilização de C para desenvolvimento do MCTCore. DriversRNF: O código deve ser escrito na linguagem C. Descrição O sistema legado.
Ultimos recursos Jobson Ronan
RMI Objetos Distribuídos Luiz C. D´oleron SCJP
JavaServer Faces Rapid Web Application Development em Java Ricardo Cavalcanti Jobson Ronan
Copyright 1998, Departamento de Informática da UFPE. Todos os direitos reservados sob a legislação em vigor. Variáveis e métodos estáticos, Passagem de.
.NET com C#.  Conceitos e Características  Vantagens do SOAP  Descrição do WebService  Gerenciamento de Estados  UDDI  Novidades do Framework 2.0.
Unidade 5 – Integrando JSP e Servlets Prof.: Henrique Santos
Universidade Federal de Alagoas Instituto de Computação - IC Redes de Computadores 2 Serviços Web Felipe Santos José Oswaldo.
WSDL Web Services Description Language. Tecnologias Relacionadas Web Services SOAP (Simple Object Access Protocol) HTTP (HyperText Markup Language) UDDI.
Programação Distribuída em Java Aula 09 - JSP. Na aula passada vimos: Aspectos gerais de segurança em Java policytool Instalação de políticas de segurança.
Análise de estratégias para implantação de segurança em arquiteturas orientadas a serviços Dezembro/2010 Itabaiana/SE Universidade Federal de Sergipe –
Tema 2: Técnicas de desenvolvimento seguro
Universidade Federal de Sergipe Departamento de Sistemas de Informação Bruno Cruz Jessica Rodrigo Aragão – ASP.NET MVC 3.
Laboratório de Programação II Método main Dados e Métodos de Classes.
Versão 1 - julho/2013 Tecgraf PUC-Rio Novembro de 2013 Introdução ao OpenBus.
Desenvolvimento WEB II Professora: Kelly de Paula Cunha Apresentação baseada no material didático elaborado pelo Prof. Pasteur Ottoni de Miranda Junior.
Web Services Passo a passo Criação de serviço SOAP em.Net 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
YOUR LOGO Tópicos Avançados em Internet Prof. Lincoln Ferreira Dantas Sistemas de Informação UNIESP – Presidente Epitácio.
Aspectos de Segurança Autenticação e Controle de Acesso Ricardo Cavalcanti Jobson Ronan
Web Services / SOA. O cenário de TI nas corporações Novas tendências batiam à porta das corporações Migraram o foco do “gerenciamento de dados” para o.
Transcrição da apresentação:

Web Services Apresentação para a Febraban

Apresentação Objetivos da apresentação –Demonstrar para stakeholders (particularmente da Febraban) as características técnicas da primeira geração de web services do BC; –Conteúdo essencialmente técnico.

Objetivos Portabilidade: –O padrão escolhido deverá garantir a portabilidade dos projetos sem afetar a independência de plataforma cliente; RAD: –O consumo de web services deverá ser possível sem que as equipes de TI das IFs tenham que se aprofundar nos meandros de uma nova tecnologia.

Objetivos (cont.) Independência de IDE: –O auxílio de uma IDE pode ser desejável, mas não necessário; Interoperabilidade: –Os web services devem poder ser consumidos em outras plataformas (ex:.NET).

Fatores decisivos Maturidade da solução open-source (Axis); Integração com IDEs; Reutilização da segurança J2EE (role- based); Escalabilidade (implementação server- side e stateless);

Passo 1: Definição do serviço SOA – Service Oriented Architecture –Um serviço é uma função bem definida, auto-contida e que não depende do estado ou contexto de outros serviços;

Passo 2: Implementação Implementação do serviço: –O serviço a ser fornecido via web service deve ser identificado e isolado em uma API tipicamente stateless; –Normalmente este serviço já está implementado no legado, bastando definir e implementar uma API para seu acesso na plataforma original.

Passo 3: Value Objects Parâmetros de entrada e saída: –A API de um serviço deverá conter apenas tipos compatíveis com web services (tipos básicos, strings, arrays tipados ou estruturas – VOs – destes tipos.

Passo 4: Criação do WS Definições de interesse público: –Definição da API (e value objects); –Geração da definição formal do web service (WSDL); –Se VOs forem compatíveis, o WSDL conterá uma descrição completa das estruturas de dados (mesmo as complexas); –O WS é, na prática, implementado por uma aplicação web comum (HTTP/HTTPS), sem o uso de qualquer extensão proprietária.

Passo 5: Segurança Segurança em web services –Não há padrão de facto – segurança delegada à camada de transporte (HTTP/HTTPS); Criptografia: –Acesso ao web service pode estar disponível apenas via HTTPS; Segurança declarativa: –URLs de acesso a web services podem exigir autenticação (padrão J2EE); –Métodos de negócio podem estar autorizados a roles específicas (padrão J2EE);

Passo 6: Publicação do WS Publicação: –A publicação do web service é, fisicamente, como a publicação de uma aplicação web comum; –A definição pública do web service (WSDL) estará disponível para download pela própria aplicação web que o implementa; –API de web services será estável – modificações e atualizações serão divulgadas com antecedência (a exemplo do Catálogo de Mensagens do SPB);

Passo 7: Consumo do WS Geração do cliente: –Acesso à definição do web service (WSDL) é tudo que basta; –IDEs têm a capacidade de gerar stub cliente a partir do WSDL;

Exemplos Exemplos de consumo –Serão apresentados dois exemplos (.NET e Java) de criação de aplicações que consomem web services.

Cliente.NET Criando um Cliente Web Services utilizando Visual Studio

Criando uma Web reference - botão direito, opção add web reference

Informando o endereço do WSDL

Classes geradas Ao criar uma Web reference, o Visual Studio, de posse das informações contidas no WSDL, cria todas as classes necessárias. Neste exemplo, são criadas: -ControleCliente -ResumoDoCliente -ResumoDaOperacao -ResumoDoVencimento

Formulário usado nos testes

using WindowsApplication1.WSControleCliente;... private void btnConsultar_Click( object sender, System.EventArgs e) { ControleClienteService controle = new ControleClienteService(); controle.Credentials = new System.Net.NetworkCredential( txtUsuario.Text, txtSenha.Text);... Código C# (1/3)

... ResumoDoCliente resCliente = controle.getResumoDoCliente( txtCodCliente.Text, txtTipoCliente.Text, dtpData.Value); ResumoDaOperacao[] listaResOperacao = resCliente. listaDeResumoDasOperacoes;... Código C# (2/3)

... txtResposta.Lines = new String[] { "Cod. Cliente: " + resCliente.codigoDoCliente, "Tipo Cliente: " +resCliente.tipoDoCliente, "Modalidade da 1a operacao: " + listaResOperacao[1].modalidade, "CodVenc. do 1o venc. da 1a operacao: " + listaResOperacao[1].listaDeVencimentos[1]. codigoVencimento};... Código C# (3/3)

Resultado da consulta

Cliente JAVA Criando um Cliente Web Services utilizando o JBuilder X (Axis)

Adicionando um Web Service designer ao projeto

Importando um serviço, através de uma URL

Classes geradas Após a importação, durante o build do projeto o Jbuilder (utilizando se do Axis) cria cria todas as classes necessárias para o acesso aos métodos expostos. Além disso ele também cria um esqueleto de uma classe de teste para o serviço. São criadas (entre outras) : -ControleClienteService -ResumoDoCliente -ResumoDoVencimento -ResumoDaOperacao -ControleClienteServiceTestCase

controleCliente.setUsername(USUARIO); controleCliente.setPassword(SENHA); String codCliente = " "; String tipoCliente = "2"; Calendar data = Calendar.getInstance(); data.setTime(new Date("11/01/2002")); ResumoDoCliente resCliente = null; resCliente = controleCliente.getResumoDoCliente( codCliente, tipoCliente, data); Código JAVA (1/3)

ResumoDoCliente resCliente = null; resCliente = controleCliente.getResumoDoCliente( codCliente, tipoCliente, data); ResumoDaOperacao[] listaResumoDaOperacao = resCliente.getListaDeResumoDasOperacoes(); ResumoDoVencimento[] listaResumoDoVencimento = listaResumoDaOperacao[1].getListaDeVencimentos( ); Código JAVA (2/3)

System.out.println("Cod. Cliente: " + resCliente.getCodigoDoCliente()); System.out.println("Tipo Cliente: " + resCliente.getTipoDoCliente()); System.out.println("Modalidade da 1a operacao: " + listaResumoDaOperacao[1].getModalidade()); System.out.println("CodVenc. do 1o venc. da 1a operacao: " + listaResumoDaOperacao[1].getListaDeVencimentos( )[1].getCodigoVencimento()); Código JAVA (3/3)

Resultado

Conclusões Simplicidade –Todo o processo de desenvolvimento de web services (e de seus clientes) se dá sem que seja necessário conhecer a sintaxe WSDL nem tampouco o protocolo SOAP; –Solução de segurança está nivelada ao protocolo de transporte (SSL + autenticação com usuários virtuais).