35

Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Embed Size (px)

Citation preview

Page 1: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services
Page 2: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

UninorteSemana de Tecnologia da Informação

Neyvo Pinheiro de SouzaNeyvo.com

Web Services

Page 3: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Modelos de Computação Distribuída

Web Services

Page 4: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Modelos de Computação Distribuída

Web Services

Page 5: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Conceito

Web Services

Web Services são componentes de software que independem de implementação ou de plataforma e podem ser descritos, publicados e invocados sobre uma rede através de mensagens padrão XML.

Page 6: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Arquitetura Web Services

Web Services

Page 7: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Tecnologias envolvidas em Web Services

XML

SOAP

WSDL

UDDI

Web Services

Page 8: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Web Services

XML

No contexto de Web Services, a XML não é apenas utilizada como formato para troca de mensagens, mas também como a forma através da qual os serviços são definidos

Permite superar as limitações do HTML

Possibilita criar qualquer número de elementos (tags) com significado associado às informações

Page 9: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Web Services

XML

Através de XML esquemas é possível validar as informações separadamente e descrever os atributos e características dos dados

Duas partes só podem trocar informações em XML e entender os elementos da mesma forma se compartilharem uma mesma definição sobre quais e como os elementos podem ser utilizados

Page 10: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

WSDL

Web Services

A WSDL é a linguagem padrão XML utilizada para descrever interfaces de Web Services

A WSDL é dividida em três elementos principais:

Definições de tipo de dados - determinam a estrutura e o conteúdo das mensagens.

Operações abstratas - determinam as operações possíveis Protocolos de ligação - determinam as formas de transmissão

das mensagens pela rede até os destinatários

Page 11: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

WSDL – Camadas de descrição dos serviços

Web Services

Page 12: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Web Services

SOAP

O SOAP é um protocolo para troca de informações em ambiente descentralizado e distribuído que permite comunicação entre aplicações de forma simples e completamente independente de sistema operacional, linguagem de programação ou plataforma

A comunicação é realizada através de trocas de mensagens, transmitidas em formato XML, incluindo os parâmetros usados na chamada, bem como os dados de resultados.

Também pode ser utilizado para invocar, publicar e localizar Web Services no registro UDDI

Page 13: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Web Services

SOAP

O SOAP pode ser utilizado em combinação com uma variedade de outros protocolos, como HTTP, SMTP, FTP, dentre outros. Também suporta Remote Procedure Call

O modelo de dados SOAP oferece definições para tipos de dados como string, integer, float, double e date

Page 14: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Web Services

SOAPaaa

Um pacote SOAP possui as seguintes partes:Envelope: define o início e o fim das mensagens, quem

poderá tratá-las e se o tratamento é obrigatório ou opcionalCabeçalho: contém atributos opcionais das mensagensCorpo: contém os dados em XMLAnexo: consiste de um ou mais documentos anexados a

mensagem principalRPC: define como o modelo RPC (Remote Procedure call)

interage com o SOAP, com o objetivo de invocar procedimentos em um sistema remoto.

Codificação: define como representar dados simples e complexos a serem transmitidos nas mensagens

Page 15: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

SOAPEnvelope, Cabeçalho e Corpo das mensagens SOAP

Web Services

Page 16: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

SOAPEnvelope, Cabeçalho e Corpo das mensagens SOAP

Web Services

Page 17: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

SOAPInvocação do serviço utilizando SOAP

Web Services

Page 18: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Web Services

UDDI

Para que um serviço seja utilizado é necessário que o cliente consiga localizá-lo, e esta localização pode ser feita através do UDDI, que é uma especificação técnica para descrever, descobrir e integrar Web Services

Para isso, existe um registro global público, chamado UDDI business registry, no qual toda a informação está disponível para consultas em geral. Entretanto, um registro privado pode adicionar controle de segurança para proteger os dados e prevenir acessos não autorizados

Page 19: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

UDDI utilizado para descobrir um Web Service

Web Services

Page 20: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

UDDI utilizado para descobrir um Web Service

Web Services

Page 21: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Exemplo

Web Services

Page 22: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Exemplo

Criar um banco de dados mysql: Agenda

Tabela agenda: id,nome e telefone

Criar um Web Service em Java

Criar um Cliente em Java

Criar um Cliente em PHP

Executar o Cliente em C#

Web Services

Page 23: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Exemplo – Banco de Dados

Criar um banco de dados mysql: Agenda

Tabela agenda: id,nome e telefone

Preencher dados na tabela

Web Services

Page 24: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Exemplo - Javaaaa

Utilizando o Netbeans

Criar um Projeto Web AgendaService

Criar uma conexão com o banco de dados

Criar uma classe Agenda

Criar uma classe AgendaDao

Criar um Web Service para listar os dados da tabela

Web Services

Page 25: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Classse Conexao

Web Services

Page 26: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Classse Agenda

Web Services

Page 27: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Classe AgendaDao – Parte 1

Web Services

Page 28: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Classe AgendaDao – Parte 2

Web Services

Page 29: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Classe AgendaDao – Parte 3

Web Services

Page 30: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Metodo listaAgenda

Web Services

Page 31: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Exemplo - Projeto AgendaClient

Web Services

Page 32: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Web Service em PHP com NuSOAP

API desenvolvida em PHP

Permite a criação de clientes e servidores

Possui suporte embutido a WSDL.

Instalação simplificada

servidor Web com suporte a PHP

biblioteca de classes nusoap.php

Web Services

Page 33: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Exemplo - Cliente em PHP

Web Services

Page 34: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

Exercícios

Criar um método no web service para pesquisar

Criar um método no web service para incluir

Web Services

Page 35: Uninorte Semana de Tecnologia da Informação Neyvo Pinheiro de Souza Neyvo.com Web Services

FIMhttp://neyvo.com

Web Services