Atenção: esse artigo tem um vídeo complementar. Clique e assista!

De que se trata o artigo:

O artigo apresenta os conceitos fundamentais de Web Services e aborda seu desenvolvimento em Java por meio do framework Apache Axis2. Complementando os conceitos, traz um exemplo prático de implementação de um serviço e sua utilização por uma aplicação cliente.

Em que situação o tema útil:

Os Web Services representam hoje uma rica área a ser explorada pelos desenvolvedores, pois permitem que aplicações originalmente isoladas por suas plataformas trabalhem em conjunto trocando serviços e informações.

Resumo DevMan:

Com a vasta quantidade de informações e recursos disponibilizados na Internet, surge a necessidade de que estes possam ser utilizados pelos desenvolvedores de software em suas aplicações. Os Web Services visam proporcionar este intercâmbio de serviços e dados, com uma interface padronizada e de simples utilização. Este artigo demonstra uma implementação prática de Web Services em Java, por meio do framework Apache Axis2.

Uma das grandes facilidades que a Internet trouxe é o acesso aos mais diversos tipos de serviços. A lista de opções é imensa: previsão do tempo, indicadores financeiros, dicionários, tradutores de texto, entre outros. Órgãos do governo passaram a disponibilizar na web acesso a diversas funcionalidades que, anteriormente, eram acessíveis apenas por meio de muita burocracia e filas intermináveis. Empresas também puderam se beneficiar do recurso, disponibilizando seus produtos e fazendo a comunicação entre seus clientes, funcionários e parceiros de negócio.

Para a grande maioria das pessoas, estes serviços estão diretamente ligados a uma página web, e todo acesso a estes é feito por meio dela. Com o advento destas funcionalidades, tornou-se uma consequência natural que estes serviços pudessem ser disponibilizados e acessados não somente por um usuário dentro do seu navegador, mas também por outros aplicativos.

Estes serviços passaram então a ser criados de modo que outros aplicativos (seja ele um outro site, um aplicativo móvel, desktop, etc.), pudessem utilizá-los “nos bastidores”, para realizar alguma tarefa específica. Foi o surgimento do conceito dos “Web Services” – literalmente, “Serviços da Web”.

Como funcionam os Web Services

Um Web Service poderia ser definido como um recurso de software destinado a ser utilizado entre diferentes sistemas dentro de uma rede. Um sistema X, precisando de algum recurso que não possui, e conhecendo um sistema Y que possui esta funcionalidade, faz uma chamada a este último solicitando um recurso e obtendo o resultado. Se esta situação fosse colocada entre sistemas residindo em um mesmo computador, em uma única plataforma, não haveria nenhuma novidade.

No caso dos Web Services, estes sistemas geralmente estão localizados em computadores distintos, e se comunicam por meio de uma conexão à Internet. Indo mais além, estes sistemas podem estar executando em plataformas completamente distintas, tendo sido programados em linguagens completamente diferentes.

Uma empresa pode ter um sistema financeiro desenvolvido em Java que, precisando obter a cotação do Dólar em relação ao Real, chama um Web Service que retorna o devido valor, e este é utilizado na impressão de um relatório, por exemplo. Graças aos padrões usados na comunicação com o Web Service, a aplicação cliente não precisa se preocupar com detalhes como o sistema operacional ou a linguagem usada pelo serviço – ela apenas deverá saber como localizar o Web Service, que dados deverá enviar para sua solicitação e como interpretar a resposta recebida (Figura 1).

imagem do artigo

Figura 1. Exemplo de uso de um Web Service: uma aplicação cliente solicita um serviço e recebe a resposta, posteriormente usada na elaboração de um relatório.

Esta “mágica” na comunicação entre os Web Services e as aplicações cliente ocorre devido à padronização das formas de troca de mensagens com os serviços.

A WSDL (Web Service Description Language, em português “Linguagem de Descrição de Web Service”) é utilizada para a especificação da interface de um Web Service, ou seja, quais são as operações disponibilizadas por este serviço e de como estas devem ser invocadas. O protocolo SOAP (Simple Object Access Protocol) define a estrutura das mensagens trocadas entre o cliente e o Web Service. Estas mensagens são geralmente enviadas em documentos no formato XML, usando o protocolo HTTP.

REST (ou RESTful) Web Services pertencem a uma outra categoria de serviços que, apesar de servirem ao mesmo propósito dos baseados em WSDL e SOAP, surgiram, a grosso modo, com o intuito de simplificar o acesso aos Web Services, utilizando para isso operações padronizadas do protocolo HTTP. Como este artigo é de conteúdo introdutório, será abordada apenas a criação de Web Services baseados em SOAP e WSDL.
...

Quer ler esse conteúdo completo? Tenha acesso completo