Buscar

Web Service

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Web Services
Tema:
Palestrantes:
João Araújo Chabuca
José Vanilson De Araújo
Zacarias Jorge Torrezão
System Architecture And Integration
TÓPICOS
Introdução á Web Services (Serviços Web)
Definição
Padrões tecnológico que estruturam os Web Services
Exemplos de utilização dos Web Services
INTRODUÇÃO
Os web services se tornaram comuns e presentes nos projetos de software atuais. Eles são amplamente usados e constituem a base da arquitetura orientada a serviços (SOA)¹, portanto é natural que o tema tenha ganhado tanta importância. 
1. Service-Oriented Architecture (SOA), pode ser traduzido como arquitetura orientada a serviços, e é um estilo de arquitetura de software cujo princípio fundamental prega que as funcionalidades implementadas pelas aplicações devem ser disponibilizadas na forma de serviços.
Service-Oriented Architecture (SOA), pode ser traduzido como arquitetura orientada a serviços, e é um estilo de arquitetura de software cujo princípio fundamental prega que as funcionalidades implementadas pelas aplicações devem ser disponibilizadas na forma de serviços. Frequentemente estes serviços são conectados através de um "barramento de serviços" (enterprise service bus, em inglês) que disponibiliza interfaces, ou contratos, acessíveis através de web services ou outra forma de comunicação entre aplicações. A arquitetura SOA é baseada nos princípios da computação distribuída e utiliza o paradigma request/reply para estabelecer a comunicação entre os sistemas clientes e os sistemas que implementam os serviços.
3
O Que São Os Web Services?
Web Services (WS) - é uma solução utilizada na integração de sistemas e na comunicação entre aplicações diferentes. Assim novas aplicações podem interagir eficientemente com aquelas que já existem e que sistemas desenvolvidos em plataformas diferentes sejam compatíveis. 
O XML (eXtencible Markup Language) é utilizado para a especificação do Web Service, permitindo que um web service desenvolvido em uma determinada linguagem possa ser consumido por aplicações desenvolvidas em linguagens diferentes. 
Podemos entender que o Web Service é uma interface que precisa ser implementada por uma aplicação independente de linguagem e de sistema operacional para viabilizar a troca de informações entre aplicações.
Ex. Tenho um web service desenvolvido em .net e uma aplicação costruida em Java ou Delphi consegue consumir este mesmo web service, isso graças ao uso do padrão xml que é um padrão multi-plataforma
4
Principais Padrões Tecnológicos Que Estruturam O WS
O XML é usado como linguagem de base para a especificação dos principais padrões que estruturam os Web Services:
 SOAP - Simple Object Access Protocol
Responsável pela codificação das mensagens num formato XML, de modo a serem facilmente interpretadas pelas aplicações.
WSDL - Web Service Description Language
Responsável pela descrição da interface publica do serviço.
UDDI - Universal Definition Discovery Interface
Responsável pela centralização dos serviços, simplificando a sua publicação/descoberta.
SOAP – Simple Object Access Protocol
SOAP é um protocolo simples baseado em XML para a troca de informação entre aplicações via o protocolo HTTP. O protocolo HTTP é utilizado como método de comunicação do tipo request/response (pedido/resposta) seguindo as regras de estruturação do tipo SOAP. Um pedido SOAP utiliza as regras de binding do HTTP que identifica se o pedido é do tipo POST ou GET.
O SOAP define:
A estrutura das mensagens
Um modelo de processamento que descreve como as mensagens devem ser processadas pelo serviço. 
Seus Antecessores:
CORBA, DCOM e RPC
Por vezes não são eficientes por questões configurações de segurança, de dependências ou decompatibilidade entre as aplicações.
O SOAP é o meio de comunicação onde circulam mensagem simples e é utilizado para aceder a um Web Service e interagir com ele.
6
Estrutura Do SOAP
Uma mensagem SOAP contém informação estruturada em XML e obedecendo a seguinte estrutura:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> 
 	<soap:Header>
	<!-- opcional --> 
	<!-- o bloco de cabeçalho vem aqui... --> 
	 </soap:Header> 
	 <soap:Body> 
	 <!-- elemento payload or Fault vem aqui... --> 
	 </soap:Body>
	</soap:Envelope>
Estrutura Do SOAP
<soap:Envelope>
Elemento raiz de uma mensagem SOAP. Contém um Header opcional e um Body obrigatório 
<soap:Header>
	usado para codificar informação adicional da mensagem – header blocks
<soap:Body>
contém o conteúdo principal da mensagem a enviar e deve ser um documento XML válido.
<soap:Fault>
trata os erros de um modo centralizado, permitindo ao servidor comunicar ao cliente os erros encontrados no processamento da mensagem 
Exemplo Da Mensagem SOAP – Web Service Para Somar Dois Números
Codificação da chamada Add(3,5)
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
 <soap:Body>
 <Add xmlns="http://w2kslosaw/DemoService/"> 
	<x>3</x> 
 	<y>5</y> 
 </Add> 
 </soap:Body>
</soap:Envelope>
[WebMethod ]
public int Add(int x, int y)
 {return x+y;}
Exemplo Da Mensagem SOAP – Web Service Para Somar Dois Números
Codificação da Resposta/Response
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> 
 <soap:Body>
 <AddResponse xmlns="http://w2kslosaw/DemoService/">
		<AddResult>
			8
		</AddResult> 
	</AddResponse>
 </soap:Body> 
</soap:Envelope>
WSDL - Web Service Description Language
O WSDL é uma especificação para descrever um Web Service e a forma de interagir com eles, num vocabulário XML. 
É um documento XML que descreve:
A interface pública descrevendo todas as funções disponibilizadas pelo serviço 
A informação dos tipos de dados para as mensagens de chamada/resposta dos serviços 
A informação sobre o protocolo de transporte a usar 
A informação sobre a localização do serviço 
Representa um “contrato” entre o cliente do serviço e o fornecedor do serviço .
11
Estrutura De Um Documento WSDL 
<definitions> é o elemento raíz do documento WSDL
<types> especifica o tipo de dados usados no serviço que serão referenciados pelas mensagens.
<message> especifica as mensagens do serviço.
<portType> especifica as <operation> ( interface) do serviço. É onde é feita todas as operações do web service e o seu tipo.
<binding> especifica o formato das mensagens e um protocolo de transporte.
Existem 4 tipos de operações diferentes <operation>:
1. One-Way (só recebe uma mensagem)
2. Request-Response (recebe uma mensagem e envia uma resposta) (Figura 4.24)
3. Solicit-Response (envia uma mensagem e espera uma resposta)
4. Notification (envia uma mensagem)
<service> especifica a localização para invocar o serviço <port>.
12
UDDI - Universal Definition Discovery Interface 
O UDDI corresponde a um repositórioonde se pode registar ou pesquisar serviços.
Possui um conjunto dedocumentos WSDL que permitem identificar e localizar os web services que correspondem aos requisitos de uma determinada funcionalidade.
Criado inicialmente por Microsoft, IBM e Ariba
13
O ciclo de registo e invocação de um webservice
O ciclo de registo e invocação de um webservice tem 5 etapas :
O web service é disponibilizado por um Service Provider que o regista num diretório ou repositório (UDDI) para o efeito. 
O Service Consumer Consulta o repositório 
Identifica um web service compatível com as funcionalidades desejadas
Invocação do Web Service diretamente ao seu fornecedor. 
Devolução das respostas pretendidas.
Exemplos de utilização dos Web Services
Utilização de Google Maps em um site de arrendamento e vendas de imoveis
Utilização de XML Soccer (http://xmlsoccer.com) em sites de noticias desportivas
Utilização de PayPal em um E-Commerce para gerenciar pagamentos e emitir faturas
Utilização do Twillio (https://www.twilio.com) para o envio de notificações de devolução de
livros por SMS através de um sistema de gerenciamento de biblioteca.
Duvidas?

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais