Monica vasconcelos
-
Upload
monicavasconcelos -
Category
Documents
-
view
257 -
download
0
Embed Size (px)
Transcript of Monica vasconcelos

ISVOUGA
Instituto Superior entre Douro e Vouga
Trabalho de tecnologias de Informática
Docente: Drº Nuno Peixoto
Discente: Mónica Vieira de Vasconcelos

Tecnologias da Informática
Índice
1.INTRODUÇÃO 3
2 .WEB SERVICES 5
2.1 O que é um Serviço? 6
2.2 Arquitetura Orientada a Serviços 6
2.3 Tecnologias chave de Web Services 8
3. SOAP 9
4. WSDL 10
5. UDDI 13
6. CONCLUSÃO 16
7. BIBLIOGRAFIA
1 - INTRODUÇÃO
Mónica Vasconcelos 2

Tecnologias da Informática
Web Services, consiste na mais recente evolução nos padrões de desenvolvimento de
aplicações distribuídas, permitindo que aplicações cooperem facilmente e compartilhem
informações e dados umas com as outras. Espera-se que esta evolução altere a forma
como as aplicações são construídas e desenvolvidas, como a informação é
apresentada e compartilhada e como software é comprado e vendido. Tecnicamente,
Web Services são serviços distribuídos que processam mensagens SOAP codificadas
em XML, enviadas através de HTTP e que são descritas através deWeb Services
Description Language (WSDL). Web Services fornecem capacidade a um sistema para
interagir e comunicar com outro entre componentes de software que pode mestar em
diferentes empresas e podem residir em diferentes infra-estruturas. O SOAP é baseado
em XML e “navega” sobre o HTTP através de requisições GET ou POST na porta 80,
base de funcionamento da Web, isto é o que garante a interoperabilidade de entre
diferentes plataformas. O WSDL, que também é baseado em XML e “navega”sobre
HTTP, fornece a descrição do serviço possibilitando a integração dele com ferramentas
de desenvolvimento e de gestão de componentes. No WSDL de um Web Services
estão descritos a URL para cessar o serviço, o nome do Web Service, a descrição de
cada método e a forma de fazer a requisição utilizando SOAP, GET ou POST. Uma das
principais razões para o crescente interesse em Web Services é que eles permitem
uma Arquitectura Orientada a Serviços (SOA - Service-Oriented Architecture). Quando
se utiliza Web Services para a construção de tal arquitectura, as soluções consistem de
colecções de serviços autónomos, identificados por URLs, com interfaces
documentadas através de WSDL e processando mensagens XML. SOA é um
complemento a abordagens orientadas a objectos (OO) e processuais.
A web services é uma arquitectura orientada a serviços difere de sistemas (OO) e
processuais num aspeto: a informação de ligação entre os componentes (binding).
Serviços interagem baseando-se em quais funções eles fornecem e como elas são
entregues. Sistemas (OO) e processuais ligam os elementos baseando-se em tipos e
nomes. Diferente de sistemas anteriores, o modelo de Web Services não opera sobre a
noção de tipos compartilhados que requerem implementações comuns. Em vez disso,
os serviços interagem baseando-se somente em contratos e esquemas. Isto permite
que o serviço descreva a estrutura das mensagens que ele pode enviar e/ou receber e
estabelecer limitações nas suas mensagens. A separação entre estrutura e
procedimento, e a precisa descrição dessas características simplificam a adaptação em Mónica Vasconcelos 3

Tecnologias da Informática
ambientes heterogéneos. Além disso, esta informação caracteriza completamente a
interface do serviço, de forma que a adaptação da aplicação não requer um ambiente
de execução compartilhado para criar a estrutura ou o comportamento das mensagens.
Web Services, utilizam características de XML, esquemas e cabeçalhos SOAP para
permitir o desenvolvimento dos serviços de forma que não ponha em causa aplicações
que já os estejam a utilizar.
2 - WEB SERVICESMónica Vasconcelos 4

Tecnologias da Informática
As organizações estão a adotar cada vez mais a Arquitetura Orientada a Serviços
(Service Oriented Architecture, SOA) com a finalidade de suportar as suas aplicações
mais críticas. SOA consiste num paradigma computacional que emergiu como
consequência direta da necessidade de colaboração e integração de componentes
funcionais, disponibilizados nesse contexto como serviços, entre empresas, de forma
interoperável e com fraco acoplamento. Web Services é uma implementação poderosa
dessa arquitetura, que podem ser basicamente definidos como uma interface para
recursos computacionais, acessível através da troca de mensagens baseadas em XML
e construída com a utilização de protocolos padrões da Internet.
Web services é um factor decisivo para a consolidação deste novo conceito como um
segmento da indústria de tecnologia foi a formação de um consórcio, designado como
Web Services Interoperability Organization (WS-I), objectivando o desenvolvimento de
padrões. Tal grupo reuniu grandes líderes do mercado de tecnologia, tais como IBM,
Microsoft, SAP, Oracle, BEA System, Fujitsu entre outras, apoiado por duas
importantes empresas de consultoria nesta área: o Gartner Group e a Forrester
Research. A reunião destes grandes competidores foi marcada, espantosamente, pelo
interesse genuíno e autêntico de se estabelecer padrões satisfatórios para todos os
envolvidos. Adiciona-se a isto o fato de que este consórcio, mais nitidamente através
da Microsoft, vem trabalhando junto ao W3C, entidade responsável pela padronização
de diversas linguagens e protocolos de Internet, numa proposta visando a
padronização do SOAP (Simple Object Access Protocol) e de outros padrões que dão
suporte ao uso de Web Services. Conforme citado anteriormente, um Web Service é
um componente ou unidade desoftware que fornece uma funcionalidade específica,
como uma rotina para validação do número de cartão de crédito. A mesma poderá ser
acessada por diferentes sistemas, através do uso de padrões da Internet, como XML
(Extensible Markup Language) e HTTP (Hyper Text Transfer Protocol). A utilização de
tais padrões é importante para o desenvolvimento de aplicações distribuídas com Web
Services. Portanto, um Web Service poderá ser utilizado internamente, por uma única
aplicação ou por várias aplicações da mesma empresa, podendo ser exposto através
da Internet, a fim de ser utilizado por qualquer aplicação, bastando para isso que a
aplicação seja capaz de entender SOAP e XML. Acrescente-se ao uso do XML, HTTP
e SOAP a necessidade de uma linguagem que esclareça sobre sintaxe, parâmetros,
métodos ou funções, a WSDL (Web Services Description Language) e um directório Mónica Vasconcelos 5

Tecnologias da Informática
geral, UDDI(Universal Description, Discovery and Integration Services), verdadeira
espécie depáginas amarelas descrevendo os serviços disponíveis.
WEB SERVICES tais nomenclaturas compõem o conjunto de tecnologias aceites pelos
padrões acordados entre os fornecedores, acima citados, e propostos ao W3C no que
diz respeito ao assunto Web Services, a saber: HTTP, XML, SOAP, WSDL e UDDI.
Neste trabalho abordar-se-á mais detalhadamente as últimas três tecnologias, SOAP,
WSDL e UDDI.
2.1 O que é um Serviço?
O conceito de serviço pode ser encontrado no mundo real por meio dos serviços de
utilidade pública como, telefonia, água, eletricidade, provedores de Internet, etc. Um
serviço representa uma funcionalidade disponibilizada ao público em geral. No mundo
computacional, um serviço está disponível num ponto particular de uma rede de
computadores, recebe e envia mensagens e comporta-se de acordo com sua
especificação. Os aspectos funcionais de um serviço são descritos utilizando
metadados, e as limitações e as condições que estão associadas com o uso do serviço
são especificadas através de políticas que podem ser adicionadas a esses metadados.
Interfaces e políticas que descrevem os termos e as condições que guiam a utilização
do serviço são publicadas de forma que os utilizadores possam descobrir e receber
toda a informação de que eles precisam para se associar, muitas vezes
dinamicamente, àquele serviço.
A informação que é publicada sobre o serviço fornece detalhes daquilo que o serviço é
e faz. O serviço também oferece toda a informação necessária para que o ambiente
onde está hospedado um cliente do serviço possa aceder e interagir com ele de forma
bem sucedida.
2.2 Arquitetura Orientada a Serviços
A Arquitetura Orientada a Serviços é um paradigma arquitetural específico que oferece
fraco acoplamento e associação dinâmica entre serviços. Ela permite que organizações
colaborem entre si competências para resolver ou suportar soluções para problemas
que encontram no decorrer de seus negócios, integrando componentes funcionais Mónica Vasconcelos 6

Consumidor de Serviços
Provedor de Serviços
Registo de serviços
Tecnologias da Informática
distribuídos de modo transparente e homogéneo. Os princípios que servem como base
para a arquitetura estão ilustrados na figura que se segue.
Associar Descobrir
Publicar
Figura.1 - Arquitetura Orientada a Serviços
Primeiro, é necessário fornecer uma definição abstrata do serviço, incluindo os
detalhes que permitam a qualquer um associar-se ao serviço de forma adequada.
Segundo, os provedores de serviços necessitam publicar os detalhes dos seus serviços
de forma que aqueles que desejam utilizá-los, possam entender mais precisamente o
que eles fazem e terem conhecimento de quais procedimentos devem ser tomados
para se conectarem a eles.
Terceiro, os consumidores de serviços precisam ter alguma forma de descobrir quais
serviços disponíveis atendem as suas necessidades. Para que esse tripé
associar/publicar/descobrir, trabalhe satisfatoriamente, padrões devem ser definidos
para administrar o que e como publicar, como descobrir uma informação, e detalhes
específicos sobre como se associar a um serviço.
O provedor de serviços, entidade criadora dos serviços, descreve sua semântica, isto
é, as funções que ele suporta, além das suas características operacionais e as
Mónica Vasconcelos 7

SOAP WSDL UDDI
Tecnologias da Informática
informações necessárias sobre como se associar a um serviço. Essa informação
descritiva (metadados) sobre o serviço é publicada no registo de serviços. O
consumidor de serviços usa o registo de serviços para descobrir os serviços pelos
quais ele tem interesse e seleciona aquele que mais o satisfaz. Baseado no acesso à
informação publicada sobre o serviço, o consumidor pode solicitar o serviço
selecionado.
2.3 Tecnologias chave de Web Services
A Web Services, uma das concepções mais bem sucedidas da Arquitetura Orientada a
Serviços que podem ser definidos como um método de integração de dados e
aplicações via padrões XML através de plataformas computacionais e sistemas
operacionais.
Aplicações habilitadas para Web Services fazem chamadas e enviam respostas umas
às outras através de um formato XML chamado de SOAP (Simple Object Access
Protocol). Na Web Services são descritos aos clientes e a outras aplicações servidoras
através do uso de outro formato XML que se denomina WSDL (Web Services
Description Language). Informação de registo e localização de um Web Service que
pode ser publicada num diretório UDDI (Universal Description, Discovery and
Integration).
No núcleo da tecnologia de Web Services, XML desempenha um papel fundamental
por ser facilmente transportável, compatível e comum com a camada de transporte pela
qual é transmitida em todos os formatos de comunicação. A figura 2 ilustra como XML
está posicionadomna base dos três principais padrões adotados para formar a
tecnologia de Web Services. Outros padrões também compatíveis com Web Services
empregam XML como sua linguagem básica.
Mónica Vasconcelos 8

Tecnologias da Informática
Figura 2 – Linguagem XML como base de Web Services
3. SOAP (SIMPLE OBJECT ACCESS PROTOCOL)
É utilizado para invocar serviços remotos de forma síncrona ou assíncrona de um Web
Service. Trata-se, na realidade, de um protocolo padrão para troca de mensagens.
Possibilita que qualquer aplicação invoque e responda a qualquer outra aplicação.
Justamente, o que garante a inter-operabilidade do Web Services é o uso deste
protocolo padrão (SOAP) para o envio e recepção destas mensagens. De notar que a
união das tecnologias amplamente difundidas HTTP e XML deram origem aos demais
elementos que compõem a plataforma Web Services, como o protocolo SOAP, por
exemplo. Vale ainda citar, a título de referência, que este protocolo ainda se encontra
em fase de estudo junto ao W3C, conforme citado, sendo que esta entidade referenda
o mesmo como XML Protocol (XMLP).
No contexto de Web Services, um software hipotético de e-commerce formata uma
mensagem com informações do produto e do local de destino, na forma de uma
mensagem XML, a qual é encapsulada no formato SOAP, a fim de ser transportada
pelo protocolo HTTP, utilizado amplamente na Internet. No destino, o Web Service , lê
informações no formato XML, faz cálculos e empacota o resultado no formato XML, o
qual é encapsulado pelo protocolo SOAP para ser transportado pelo protocolo HTTP,
de volta para o programa que fez a solicitação de cálculo. O SOAP possui duas
vantagens em relação a tais protocolos:
1) Não se utiliza de mecanismos de selecção dinâmica de "ports" e, portanto, pode
processar facilmente através de "firewalls" padrões;
2) Pelo facto de ser derivado do padrão XML pode ser utilizado para dispor
argumentos de qualquer aplicação para qualquer outra aplicação, não importando o
Mónica Vasconcelos 9

Tecnologias da Informática
tipo de sistema, linguagem de programação ou sistema distribuído. Basicamente, este
protocolo compõe-se de três partes:
1) Um envelope que define um "framework", o qual descreve o que a mensagem
contém e como processá-la;
2) Um conjunto de regras codificadas para expressar instâncias dos tipos definidos da
aplicação;
3) Uma convenção que representa chamadas e respostas remotas de procedimento.
Percebe-se que o SOAP não especifica necessidades da informação a ser trocada,
isso cabe às aplicações que o usam. O SOAP é assim uma plataforma sobre a qual
informação específica de aplicações pode ser trocada. É um standard que permite
grande expansibilidade e interoperabilidade entre sistemas. Esta interoperabilidade
poderá naturalmente estar ameaçada se não forem utilizados standards puros SOAP.
4. WSDL (Web Services Description Language)
WSDL (Web Services Description Language) é um formato XML para descrever
serviços de rede como um conjunto de pontos de acesso que funcionam através de
mensagens contendo informação orientada ao documento ou orientada ao
procedimento. As operações e as mensagens são descritas de forma abstrata e ligadas
concretamente ao protocolo de transporte e ao formato da mensagem para definir um
ponto de acesso. Pontos de acesso concretos e relacionados são combinados em
pontos de acesso abstratos (serviços). WSDL é extensível para permitir que a
descrição de pontos de acesso e suas mensagens não levem em consideração quais
formatos de mensagem ou protocolos de transporte que estão a ser usados na
comunicação.
O provedor (desenvolvedor) de um Web Service utiliza a WSDL para construir um
documento que descreve detalhes necessários na invocação do serviço por um cliente.
Detalhes como, a interface do serviço, esses métodos estão disponíveis, as
assinaturas dos métodos e os valores retornados, o endereço onde o serviço está
localizado e o protocolo que o serviço é capaz de processar para efetuar a
comunicação, são disponibilizados para a conquista independente de plataforma e
linguagem.
O uso da WSDL proporciona algumas vantagens:Mónica Vasconcelos 10

<definitions>
DESCRIÇÃO ABSTRATA
Tecnologias da Informática
Torna mais fácil a criação e a manutenção de serviços através do fornecimento
de uma abordagem mais estruturada para definir interfaces de Web Services;
Facilita o consumo de Web Services ao reduzir a quantidade de código (e erros
potenciais) que uma aplicação cliente precisa implementar;
Facilita a implementação de mudanças que provavelmente terão menos
impacto às aplicações clientes SOAP.
A descoberta dinâmica de descrições WSDL permite que tais mudanças sejam
repassadas automaticamente aos clientes que estejam a utilizar WSDL, de forma a que
modificações difíceis no código do cliente não tenham que ser feitas a cada mudança
ocorra.
4.1 Estrutura do Documento WSDL
A estrutura sintática do documento WSDL como mostra a figura.
Mónica Vasconcelos 11

Tecnologias da Informática
Figura -3 estrutura sintática do documento WSDL
Um documento WSDL organiza-se em duas seções lógicas: uma descrição abstrata e
uma descrição concreta. A parte abstrata, composta pelos elementos
<types>,<message> e <portType>, descreve o comportamento de um Web Service em
relação às mensagens que ele consome e produz. A parte concreta ocupa-se em
informar como e onde aceder a implementação de um serviço. Essas informações são
cobertas pelos elementos <binding> e <service>.
Mónica Vasconcelos 12

Tecnologias da Informática
Arquivos WSDL iniciam com um elemento raiz <definitions>, que contém geralmente
atributos definindo namespaces que descrevem quais XML Schemas são usados ao
longo do documento WSDL.
O elemento <types> engloba a definição dos tipos de dados relevantes para as
mensagens trocadas entre o serviço e o cliente. Todas as mensagens que possam vir a
ser trocadas entre o consumidor do serviço e o serviço são listadas no documento
WSDL através do emprego do elemento <message>. Esse elemento é responsável por
definir de forma abstrata o conteúdo das mensagens.
O elemento <portType> define um conjunto de operações relacionadas que um Web
Service suporta. Uma operação é um agrupamento das mensagens que podem ser
trocadas numa interação particular com o serviço e é indicado pelo elemento
<operation>.
Quatro tipos de operações são suportados:
Unidirecional: uma mensagem chega ao serviço e não é produzida como resposta;
Solicitação/Resposta: uma mensagem chega ao serviço e é produzida uma
mensagem como resposta;
Pedido/Resposta: o serviço envia uma mensagem e obtém uma resposta;
Notificação: o serviço envia uma mensagem e não recebe nada como resposta.
O protocolo usado para transportar as mensagens é especificado na descrição
concreta pelo elemento <binding>. Esse elemento associa um protocolo específico
(SOAP, HTTP, SMTP, etc) a um elemento <portType> particular.
O elemento <service> é a parte final da descrição de um serviço. Através de seu
elemento filho <port> ele indica o endereço de rede onde o Web Service está
localizado.
5. UDDI (UNIVERSAL DESCRIPTION, DISCOVERY AND INTEGRATION) O aplicativo
que irá utilizar um Web Service necessita identificar, ou descobrir, a existência do
mesmo. Ao criar-se uma aplicação de e-commerce, são necessários mecanismos para
catalogar e localizar Web Services com funcionalidades específicas e que possam ser
utilizados pela aplicação que está ser criada. O UDDI vem acompanhar esta
necessidade. Tal como os anteriores formatos, este conceito utiliza padrão XML. A
ideia é similar ao que propõe o padrão Corba com o conceito de"repositório de Mónica Vasconcelos 13

Tecnologias da Informática
objectos", embora as implementações sejam distintas. Analogamente, trata-se de um
serviço similar ao prestado pelas páginas amarelas, excepto pelo fato de serem as
mesmas electrónicas. Estas provêem uma estrutura de informações, na qual várias
entidades de negócio se registam a elas mesmas e aos seus respectivos serviços,
através das suas definições na linguagem WSDL, discriminadas por áreas de negócio
como indústria, produto ou geograficamente, de forma a permitir uma busca
optimizada. Existem dois tipos de registos:
Públicos, os quais servem como pontos de agregação para uma variedade de
negócios publicarem os seus serviços;
Privados, os quais servem um papel similar nas organizações. A analogia que se
faz a este protocolo em face de uma arquitectura utilizando-se do J2EE ou mesmo
CORBA, são os protocolos JNDI Repos ou LDAP.A especificação UDDI consiste de um
esquema de 4 camadas dispostas hierarquicamente, as quais provêem um modelo
base de informação para publicar, validar e invocar informações a respeito de um Web
Service.
Entidade de Negócio - o elemento no nível mais elevado de um registo UDDI
captura o conjunto inicial de informações requeridas por parceiros, pesquisando para
localizar informações a respeito de serviços de negócio, incluindo aí o nome, o tipo de
indústria, categoria do produto, sua localização geográfica, categorizações opcionais e
informações de contacto;
Serviço de Negócio - esta estrutura agrupa uma série de Web Services
relacionados de tal forma, que eles possam ser relacionados a ambos os processos de
negócio, quanto por categorias de serviços. Este agrupamento possibilita uma melhor
optimização no tempo de pesquisa;
Informações de troca (Bind Information) - cada Web Service de negócio tem um
ou mais elementos de descrições capturadas em XML, designados como exemplos.
Este contem informações que são relevantes para aplicações que são necessárias no
momento de se invocar um serviço ou quando está a ocorrer uma troca com um
destes. Estas informações referem- se ao endereço URL e o servidor, por exemplo;
Informações de concordância - são informações que possibilitam a um cliente
determinar se um Web Service específico está de acordo quanto à sua implementação.
Referem-se a informações de ordem de compra do serviço, questões de segurança,
Mónica Vasconcelos 14

Tecnologias da Informática
que protocolos são apropriados, que tipo de resposta deverá ser aguardada após a
ordem de compra, entre outras. Assim, pode-se dizer que as funções do UDDI são:
Permitir que as aplicações de negócio se descubram;
Definir como elas irão interagir através da Internet;
Compartilhar informações em registos;
6. CONCLUSÃO
Pode concluir-se que o modelo de funcionamento da Web Service segue uma linha que
remete ao seguinte fluxo. Uma aplicação é desenvolvida, utilizando-se de qualquer tipo Mónica Vasconcelos 15

Tecnologias da Informática
de linguagem de programação. Tal aplicação possui uma série de interfaces
formalizadas, as quais são publicadas em WSDL, a entidade responsável pela
aplicação, regista a si mesma apropriadamente como sendo uma entidade de negócio,
e publica as suas interfaces em WSDL, num ou mais registos UDDI, que vêm a ser
directórios de Servidores Web. Qualquer outra aplicação que necessite das
funcionalidades daquela desenvolvida, pesquisa os registos UDDI e localiza os
serviços correspondentes. Finalmente, é então invocado o serviço desejado, utilizando-
se das informações armazenadas no registo UDDI, especificamente, o URL do serviço
a ser localizado e a interface WSDL para ser utilizado. Por fim, e a respeito das três
tecnologias fundamentais para a implementação do conceito de Web Services: • SOAP
- Utilizado para acesso e transporte. Trata-se do protocolo utilizado para invocar um
Web Service, WSDL, Utilizado para descrição. Trata-se da descrição ou definição de
um Web, UDDI, Utilizado para o descobrimento e publicação. Trata-se do directório no
qual o Web Service pode ser localizado.
7. BIBLIOGRAFIA
http://pt.wikipedia.org/wiki/Web_service
Mónica Vasconcelos 16

Tecnologias da Informática
http://msdn.microsoft.com/pt-br/library/cc564893.aspx
http://www.w3schools.com/webservices/default.asp
http://pt.wikipedia.org/wiki/SOAP
http://www.w3schools.com/soap/
Mónica Vasconcelos 17