SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Instituto Superior de Entre Douro e Vouga

Tecnologias da Informação e da Comunicação│2010/2011

               Tecnologias de Internet




                            Trabalho realizado por:
                         Sérgio Paulo Lopes da Rocha


                   Santa Maria da Feira, 03 Dezembro de 2010
TP 5 - Trabalho Prático                                                                                  WEB SERVICES




                                                            Í NDICE

1. Introdução.............................................................................................................. 3
2. Web Services e as Alternativas Tecnológicas (arquitectura)................................. 5
   2.1      SOAP (Simple Object Access Protocol)........................................................ 6
   2.2      WSDL (Web Service Description Language) ................................................ 8
   2.3      UDDI (Universal Description, Discovery and Integration).............................. 9
3. Conclusão............................................................................................................ 12
4. Bibliografia........................................................................................................... 14




 Sérgio Rocha - 2104                                          ISVOUGA                                         Página 2 de 14
TP 5 - Trabalho Prático                                                     WEB SERVICES




1. INTRODUÇÃO


Web Services, é a 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 de
Web Services Description Language (WSDL).


Web Services fornecem interoperabilidade entre componentes de software que podem
estar 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
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.




 Sérgio Rocha - 2104                          ISVOUGA                           Página 3 de 14
TP 5 - Trabalho Prático                                              WEB SERVICES



Uma arquitectura orientada a serviços difere de sistemas (OO) e processuais num
aspecto: 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 restrições em suas mensagens. A separação entre estrutura e
comportamento, e a explícita descrição dessas características simplificam a integração
em ambientes heterogéneos. Além disso, esta informação caracteriza completamente a
interface do serviço, de forma que a integraçã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 a evolução dos serviços de forma que não prejudiquem aplicações que já os
estejam utilizando.


Problemas como distribuição e transporte, segurança e autenticação, e controle de
transacções, são resolvidos com várias tecnologias e características dos Web Services.




 Sérgio Rocha - 2104                     ISVOUGA                         Página 4 de 14
TP 5 - Trabalho Prático                                               WEB SERVICES



2. WEB SERVICES E AS ALTERNATIVAS TECNOLÓGICAS (ARQUITECTURA)


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, endossado 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 de
software 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 geral, UDDI
(Universal Description, Discovery and Integration Services), verdadeira espécie de
páginas amarelas descrevendo os serviços disponíveis.




 Sérgio Rocha - 2104                     ISVOUGA                          Página 5 de 14
TP 5 - Trabalho Prático                                             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 concerne
o 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,
dado que as outras duas, HTTP e XML já foram abordadas em trabalhos anteriores.


  2.1 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,
conforme se constata na imagem abaixo.




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 recebimento destas mensagens. De notar que
a união das tecnologias amplamente disseminadas 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).




Sérgio Rocha - 2104                      ISVOUGA                       Página 6 de 14
TP 5 - Trabalho Prático                                             WEB SERVICES



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
"desempacota esta mensagem", 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 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.




 Sérgio Rocha - 2104                       ISVOUGA                      Página 7 de 14
TP 5 - Trabalho Prático                                               WEB SERVICES



Então, 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.


  2.2 WSDL (WEB SERVICE DESCRIPTION LANGUAGE)


Trata-se de uma linguagem de definição de interface, baseada em XML, a qual
possibilita a descrição das funcionalidades, métodos e atributos disponibilizados pelo
Web Service. Consequentemente, permite que uma aplicação descreva as suas
funcionalidades e atributos num formato padrão, de tal forma que outra aplicação possa
compreendê-la. É considerado como um dos fundamentos que possibilita a
especificação consistente de um Web Service.


A fim de documentar e expor as funcionalidades de um Web Service, a Microsoft
propôs ao W3C a especificação WSDL. Esta define, adicionalmente, regras para a
descrição das funcionalidades de um Web Service, utilizando-se para isso do XML. São
descritos os métodos e propriedades suportados pelo Web Service, os tipos de dados e
os protocolos que podem ser utilizados para o envio e recebimento de mensagens. As
informações inseridas nas mensagens são repassadas por meio de operações e
palavras-chave da linguagem WSDL, como type, message, operation ou binding.




Sérgio Rocha - 2104                      ISVOUGA                         Página 8 de 14
TP 5 - Trabalho Prático                                              WEB SERVICES



Assumindo que um dos objectivos do Web Services, é permitir que aplicações
desenvolvidas em diferentes linguagens ou mesmo modelos de programação diversos
possam operar entre si, o mesmo utiliza-se desta tecnologia WSDL. Interessante notar
que a mesma, descreve o serviço que será implementado pela lógica do negócio e as
interfaces necessárias para os clientes a chamarem. Não haverá a definição da
implementação da lógica de negócios. Haverá sim, apenas a descrição da mesma,
assumindo um conjunto de ponteiros finais de operações nas mensagens, os quais
contêm informações orientadas a documentos ou procedimentos.


Por tanto, verifica-se que o WSDL é um formato XML para descrever a interface pela
qual um Web Service é usado.


   2.3 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á sendo criada. O UDDI vem
atender a esta necessidade. Tal como os anteriores formatos, este conceito utiliza-se
do padrão XML. A ideia é similar ao que propõe o padrão Corba com o conceito de
"repositório de objectos", embora as implementações sejam distintas. Analogamente,
trata-se de um serviço similar ao prestado pelas páginas amarelas, excepto pelo facto
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 serviços
respectivos, 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;


 Sérgio Rocha - 2104                     ISVOUGA                         Página 9 de 14
TP 5 - Trabalho Prático                                              WEB SERVICES




    • 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, conforme especifica a
imagem abaixo.


    • 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 de troca



Sérgio Rocha - 2104                              ISVOUGA               Página 10 de 14
TP 5 - Trabalho Prático                                              WEB SERVICES



        (Binding Templates). 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, 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 globais.




Sérgio Rocha - 2104                       ISVOUGA                     Página 11 de 14
TP 5 - Trabalho Prático                                                      WEB SERVICES



3. CONCLUSÃO


Em forma de resumo, vale dizer 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 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 Service;


Sérgio Rocha - 2104                       ISVOUGA                             Página 12 de 14
TP 5 - Trabalho Prático                                             WEB SERVICES




    • UDDI - Utilizado para o descobrimento e publicação. Trata-se do directório no
        qual o Web Service pode ser localizado.




Sérgio Rocha - 2104                      ISVOUGA                      Página 13 de 14
TP 5 - Trabalho Prático                                                      WEB SERVICES



4. BIBLIOGRAFIA

      • http://pt.wikipedia.org/wiki/Web_service
      • 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/
      • http://www.w3.org/TR/wsdl
      • http://en.wikipedia.org/wiki/Universal_Description_Discovery_and_Integration
      • http://technet.microsoft.com/pt-br/library/cc783718%28WS.10%29.aspx




Sérgio Rocha - 2104                           ISVOUGA                          Página 14 de 14

Weitere ähnliche Inhalte

Was ist angesagt?

SOA e Web Services
SOA e Web ServicesSOA e Web Services
SOA e Web Servicessergiocrespo
 
Web Services - Grupo F
Web Services - Grupo FWeb Services - Grupo F
Web Services - Grupo Fmdmansur
 
Introdução a Web Services
Introdução a Web ServicesIntrodução a Web Services
Introdução a Web ServicesFabio Leal
 
Introdução a Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a ServiçosIntrodução a Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a ServiçosIgor Takenami
 
Maratona JBoss 2010 - JBossWS
Maratona JBoss 2010 -  JBossWSMaratona JBoss 2010 -  JBossWS
Maratona JBoss 2010 - JBossWSDextra
 
Sistemas Distribuidos Java
Sistemas Distribuidos JavaSistemas Distribuidos Java
Sistemas Distribuidos Javalimadavi
 
INTEGRAÇÃO DE APLICAÇÃO ANDROID COM WEB SERVICES REST
INTEGRAÇÃO DE APLICAÇÃO ANDROID COM WEB SERVICES RESTINTEGRAÇÃO DE APLICAÇÃO ANDROID COM WEB SERVICES REST
INTEGRAÇÃO DE APLICAÇÃO ANDROID COM WEB SERVICES RESTRafael Bitencourt
 
201406Carvalho
201406Carvalho201406Carvalho
201406CarvalhoAfonso Pra
 
SOA - Uma Breve Introdução
SOA - Uma Breve IntroduçãoSOA - Uma Breve Introdução
SOA - Uma Breve IntroduçãoAndré Borgonovo
 
Plataforma OpenSuite
Plataforma OpenSuitePlataforma OpenSuite
Plataforma OpenSuiteStart4up
 

Was ist angesagt? (19)

SOA e Web Services
SOA e Web ServicesSOA e Web Services
SOA e Web Services
 
A Estrutura de um Web Service
A Estrutura de um Web ServiceA Estrutura de um Web Service
A Estrutura de um Web Service
 
Web Services - Grupo F
Web Services - Grupo FWeb Services - Grupo F
Web Services - Grupo F
 
Introdução a Web Services
Introdução a Web ServicesIntrodução a Web Services
Introdução a Web Services
 
Introdução a Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a ServiçosIntrodução a Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a Serviços
 
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
 
WebServices-XML
WebServices-XMLWebServices-XML
WebServices-XML
 
Serviços Web Semânticos
Serviços Web SemânticosServiços Web Semânticos
Serviços Web Semânticos
 
Maratona JBoss 2010 - JBossWS
Maratona JBoss 2010 -  JBossWSMaratona JBoss 2010 -  JBossWS
Maratona JBoss 2010 - JBossWS
 
Sistemas Distribuidos Java
Sistemas Distribuidos JavaSistemas Distribuidos Java
Sistemas Distribuidos Java
 
IPD Office 365
IPD Office 365IPD Office 365
IPD Office 365
 
INTEGRAÇÃO DE APLICAÇÃO ANDROID COM WEB SERVICES REST
INTEGRAÇÃO DE APLICAÇÃO ANDROID COM WEB SERVICES RESTINTEGRAÇÃO DE APLICAÇÃO ANDROID COM WEB SERVICES REST
INTEGRAÇÃO DE APLICAÇÃO ANDROID COM WEB SERVICES REST
 
SOAP e REST
SOAP e RESTSOAP e REST
SOAP e REST
 
201406Carvalho
201406Carvalho201406Carvalho
201406Carvalho
 
Web Services XML - .NET framework
Web Services XML - .NET frameworkWeb Services XML - .NET framework
Web Services XML - .NET framework
 
PHP nas Nuvens
PHP nas NuvensPHP nas Nuvens
PHP nas Nuvens
 
SOA - Uma Breve Introdução
SOA - Uma Breve IntroduçãoSOA - Uma Breve Introdução
SOA - Uma Breve Introdução
 
Web Service - XML
Web Service - XMLWeb Service - XML
Web Service - XML
 
Plataforma OpenSuite
Plataforma OpenSuitePlataforma OpenSuite
Plataforma OpenSuite
 

Ähnlich wie Web services

Web Services Xml
Web Services XmlWeb Services Xml
Web Services XmlUFMG
 
Arquitetura Orientada a Serviços e BPM
Arquitetura Orientada a Serviços e BPMArquitetura Orientada a Serviços e BPM
Arquitetura Orientada a Serviços e BPMRoger Ritter
 
Sistemas Distribuídos - Comunicação Distribuída – Web Services
Sistemas Distribuídos - Comunicação Distribuída – Web ServicesSistemas Distribuídos - Comunicação Distribuída – Web Services
Sistemas Distribuídos - Comunicação Distribuída – Web ServicesAdriano Teixeira de Souza
 
Mini Curso Web Services com PHP
Mini Curso Web Services com PHPMini Curso Web Services com PHP
Mini Curso Web Services com PHPelliando dias
 
Arquitetura orientada a servicos soa
Arquitetura orientada a servicos   soaArquitetura orientada a servicos   soa
Arquitetura orientada a servicos soaLeonardo Eloy
 
O básico do uso de rest vs soap
O básico do uso de rest vs soapO básico do uso de rest vs soap
O básico do uso de rest vs soapJeison Barros
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETRenato Groff
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETRenato Groff
 
Engenharia de software orientada a servicos
Engenharia de software orientada a servicosEngenharia de software orientada a servicos
Engenharia de software orientada a servicosLeonardo Eloy
 
Apresentação web services
Apresentação web servicesApresentação web services
Apresentação web servicesVitor Fonseca
 

Ähnlich wie Web services (20)

Monica vasconcelos (1)
Monica vasconcelos (1)Monica vasconcelos (1)
Monica vasconcelos (1)
 
Monica vasconcelos
Monica vasconcelosMonica vasconcelos
Monica vasconcelos
 
Web Services Xml
Web Services XmlWeb Services Xml
Web Services Xml
 
Arquitetura Orientada a Serviços e BPM
Arquitetura Orientada a Serviços e BPMArquitetura Orientada a Serviços e BPM
Arquitetura Orientada a Serviços e BPM
 
Web service
Web serviceWeb service
Web service
 
UM ESTUDO SOBRE SOA
UM ESTUDO SOBRE SOAUM ESTUDO SOBRE SOA
UM ESTUDO SOBRE SOA
 
Sistemas Distribuídos - Comunicação Distribuída – Web Services
Sistemas Distribuídos - Comunicação Distribuída – Web ServicesSistemas Distribuídos - Comunicação Distribuída – Web Services
Sistemas Distribuídos - Comunicação Distribuída – Web Services
 
Mini Curso Web Services com PHP
Mini Curso Web Services com PHPMini Curso Web Services com PHP
Mini Curso Web Services com PHP
 
Web Services
Web ServicesWeb Services
Web Services
 
Saas
SaasSaas
Saas
 
Arquitetura orientada a servicos soa
Arquitetura orientada a servicos   soaArquitetura orientada a servicos   soa
Arquitetura orientada a servicos soa
 
DotNet vs. Java
DotNet vs. JavaDotNet vs. Java
DotNet vs. Java
 
Webservice
WebserviceWebservice
Webservice
 
SOA
SOASOA
SOA
 
O básico do uso de rest vs soap
O básico do uso de rest vs soapO básico do uso de rest vs soap
O básico do uso de rest vs soap
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
 
Engenharia de software orientada a servicos
Engenharia de software orientada a servicosEngenharia de software orientada a servicos
Engenharia de software orientada a servicos
 
Apresentação web services
Apresentação web servicesApresentação web services
Apresentação web services
 
Trabalho Final PSDC - Simião
Trabalho Final PSDC - SimiãoTrabalho Final PSDC - Simião
Trabalho Final PSDC - Simião
 

Mehr von Sérgio Rocha

Criminalidade informatica (sabotagem)
Criminalidade informatica (sabotagem)Criminalidade informatica (sabotagem)
Criminalidade informatica (sabotagem)Sérgio Rocha
 
Trabalho prático de pneumática
Trabalho prático de pneumáticaTrabalho prático de pneumática
Trabalho prático de pneumáticaSérgio Rocha
 
Trabalho de convecção natural
Trabalho de convecção naturalTrabalho de convecção natural
Trabalho de convecção naturalSérgio Rocha
 
Trabalho de climatização (cálculo de caudais)
Trabalho de climatização (cálculo de caudais)Trabalho de climatização (cálculo de caudais)
Trabalho de climatização (cálculo de caudais)Sérgio Rocha
 
Reflexão sobre pr np4428
Reflexão sobre pr np4428Reflexão sobre pr np4428
Reflexão sobre pr np4428Sérgio Rocha
 
ética e deontologia profissional
ética e deontologia profissionalética e deontologia profissional
ética e deontologia profissionalSérgio Rocha
 
Energia fotovoltaica
Energia fotovoltaicaEnergia fotovoltaica
Energia fotovoltaicaSérgio Rocha
 
Dimensionamento de pilar(es) de suporte de um passadiço
Dimensionamento de pilar(es) de suporte de um passadiçoDimensionamento de pilar(es) de suporte de um passadiço
Dimensionamento de pilar(es) de suporte de um passadiçoSérgio Rocha
 
Projecto de uma estrutura metálica (apresentação)
Projecto de uma estrutura metálica  (apresentação)Projecto de uma estrutura metálica  (apresentação)
Projecto de uma estrutura metálica (apresentação)Sérgio Rocha
 
Leis fundamentais da dinâmica dos fluidos
Leis fundamentais da dinâmica dos fluidosLeis fundamentais da dinâmica dos fluidos
Leis fundamentais da dinâmica dos fluidosSérgio Rocha
 
ética e deontologia profissional (apresentação)
ética e deontologia profissional  (apresentação)ética e deontologia profissional  (apresentação)
ética e deontologia profissional (apresentação)Sérgio Rocha
 
Controlo da qualidade, segurança e higiene em soldadura
Controlo da qualidade, segurança e higiene em soldaduraControlo da qualidade, segurança e higiene em soldadura
Controlo da qualidade, segurança e higiene em soldaduraSérgio Rocha
 

Mehr von Sérgio Rocha (20)

World Wide Web
World Wide WebWorld Wide Web
World Wide Web
 
Versões do windows
Versões do windowsVersões do windows
Versões do windows
 
HTML
HTMLHTML
HTML
 
XML
XMLXML
XML
 
http
httphttp
http
 
Criminalidade informatica (sabotagem)
Criminalidade informatica (sabotagem)Criminalidade informatica (sabotagem)
Criminalidade informatica (sabotagem)
 
Trabalho prático de pneumática
Trabalho prático de pneumáticaTrabalho prático de pneumática
Trabalho prático de pneumática
 
Trabalho de convecção natural
Trabalho de convecção naturalTrabalho de convecção natural
Trabalho de convecção natural
 
Trabalho de climatização (cálculo de caudais)
Trabalho de climatização (cálculo de caudais)Trabalho de climatização (cálculo de caudais)
Trabalho de climatização (cálculo de caudais)
 
Reflexão sobre pr np4428
Reflexão sobre pr np4428Reflexão sobre pr np4428
Reflexão sobre pr np4428
 
ética e deontologia profissional
ética e deontologia profissionalética e deontologia profissional
ética e deontologia profissional
 
Energia fotovoltaica
Energia fotovoltaicaEnergia fotovoltaica
Energia fotovoltaica
 
Dimensionamento de pilar(es) de suporte de um passadiço
Dimensionamento de pilar(es) de suporte de um passadiçoDimensionamento de pilar(es) de suporte de um passadiço
Dimensionamento de pilar(es) de suporte de um passadiço
 
Cork in aerospace
Cork in aerospaceCork in aerospace
Cork in aerospace
 
A cortiça
A cortiçaA cortiça
A cortiça
 
Water on fire
Water on fireWater on fire
Water on fire
 
Projecto de uma estrutura metálica (apresentação)
Projecto de uma estrutura metálica  (apresentação)Projecto de uma estrutura metálica  (apresentação)
Projecto de uma estrutura metálica (apresentação)
 
Leis fundamentais da dinâmica dos fluidos
Leis fundamentais da dinâmica dos fluidosLeis fundamentais da dinâmica dos fluidos
Leis fundamentais da dinâmica dos fluidos
 
ética e deontologia profissional (apresentação)
ética e deontologia profissional  (apresentação)ética e deontologia profissional  (apresentação)
ética e deontologia profissional (apresentação)
 
Controlo da qualidade, segurança e higiene em soldadura
Controlo da qualidade, segurança e higiene em soldaduraControlo da qualidade, segurança e higiene em soldadura
Controlo da qualidade, segurança e higiene em soldadura
 

Kürzlich hochgeladen

SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123
SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123
SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123JaineCarolaineLima
 
Aula 6 - O Imperialismo e seu discurso civilizatório.pptx
Aula 6 - O Imperialismo e seu discurso civilizatório.pptxAula 6 - O Imperialismo e seu discurso civilizatório.pptx
Aula 6 - O Imperialismo e seu discurso civilizatório.pptxMarceloDosSantosSoar3
 
Poder do convencimento,........... .
Poder do convencimento,...........         .Poder do convencimento,...........         .
Poder do convencimento,........... .WAGNERJESUSDACUNHA
 
Depende De Nós! José Ernesto Ferraresso.ppsx
Depende De Nós! José Ernesto Ferraresso.ppsxDepende De Nós! José Ernesto Ferraresso.ppsx
Depende De Nós! José Ernesto Ferraresso.ppsxLuzia Gabriele
 
Como fazer um Feedback Eficaz - Comitê de Gestores
Como fazer um Feedback Eficaz - Comitê de GestoresComo fazer um Feedback Eficaz - Comitê de Gestores
Como fazer um Feedback Eficaz - Comitê de GestoresEu Prefiro o Paraíso.
 
Slides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptx
Slides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptxSlides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptx
Slides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptxLuizHenriquedeAlmeid6
 
AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)
AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)
AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)profesfrancleite
 
Caça palavras - BULLYING
Caça palavras  -  BULLYING  Caça palavras  -  BULLYING
Caça palavras - BULLYING Mary Alvarenga
 
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdfARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdfItaloAtsoc
 
Mês da Leitura - Agrupamento de Escolas de Vagos 2024.pdf
Mês da Leitura - Agrupamento de Escolas de Vagos 2024.pdfMês da Leitura - Agrupamento de Escolas de Vagos 2024.pdf
Mês da Leitura - Agrupamento de Escolas de Vagos 2024.pdfEscolaSecundria2
 
Ressonancia_magnetica_basica_slide_da_net.pptx
Ressonancia_magnetica_basica_slide_da_net.pptxRessonancia_magnetica_basica_slide_da_net.pptx
Ressonancia_magnetica_basica_slide_da_net.pptxPatriciaFarias81
 
A CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARX
A CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARXA CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARX
A CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARXHisrelBlog
 
Trabalho DAC História 25 de Abril de 1974
Trabalho DAC História 25 de Abril de 1974Trabalho DAC História 25 de Abril de 1974
Trabalho DAC História 25 de Abril de 1974AnaRitaFreitas7
 
Termo de audiência de Mauro Cid na ìntegra
Termo de audiência de Mauro Cid na ìntegraTermo de audiência de Mauro Cid na ìntegra
Termo de audiência de Mauro Cid na ìntegrafernando846621
 
FORMAÇÃO POVO BRASILEIRO atividade de história
FORMAÇÃO POVO BRASILEIRO atividade de históriaFORMAÇÃO POVO BRASILEIRO atividade de história
FORMAÇÃO POVO BRASILEIRO atividade de históriaBenigno Andrade Vieira
 
Apresentação sobrea dengue educação.pptx
Apresentação sobrea dengue educação.pptxApresentação sobrea dengue educação.pptx
Apresentação sobrea dengue educação.pptxtaloAugusto8
 

Kürzlich hochgeladen (20)

SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123
SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123
SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123
 
Aula 6 - O Imperialismo e seu discurso civilizatório.pptx
Aula 6 - O Imperialismo e seu discurso civilizatório.pptxAula 6 - O Imperialismo e seu discurso civilizatório.pptx
Aula 6 - O Imperialismo e seu discurso civilizatório.pptx
 
Poder do convencimento,........... .
Poder do convencimento,...........         .Poder do convencimento,...........         .
Poder do convencimento,........... .
 
Abordagem 1. Análise textual (Severino, 2013).pdf
Abordagem 1. Análise textual (Severino, 2013).pdfAbordagem 1. Análise textual (Severino, 2013).pdf
Abordagem 1. Análise textual (Severino, 2013).pdf
 
Depende De Nós! José Ernesto Ferraresso.ppsx
Depende De Nós! José Ernesto Ferraresso.ppsxDepende De Nós! José Ernesto Ferraresso.ppsx
Depende De Nós! José Ernesto Ferraresso.ppsx
 
Como fazer um Feedback Eficaz - Comitê de Gestores
Como fazer um Feedback Eficaz - Comitê de GestoresComo fazer um Feedback Eficaz - Comitê de Gestores
Como fazer um Feedback Eficaz - Comitê de Gestores
 
Abordagens 4 (Problematização) e 5 (Síntese pessoal) do texto de Severino (20...
Abordagens 4 (Problematização) e 5 (Síntese pessoal) do texto de Severino (20...Abordagens 4 (Problematização) e 5 (Síntese pessoal) do texto de Severino (20...
Abordagens 4 (Problematização) e 5 (Síntese pessoal) do texto de Severino (20...
 
Slides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptx
Slides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptxSlides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptx
Slides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptx
 
AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)
AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)
AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)
 
Caça palavras - BULLYING
Caça palavras  -  BULLYING  Caça palavras  -  BULLYING
Caça palavras - BULLYING
 
Abordagem 3. Análise interpretativa (Severino, 2013)_PdfToPowerPoint.pdf
Abordagem 3. Análise interpretativa (Severino, 2013)_PdfToPowerPoint.pdfAbordagem 3. Análise interpretativa (Severino, 2013)_PdfToPowerPoint.pdf
Abordagem 3. Análise interpretativa (Severino, 2013)_PdfToPowerPoint.pdf
 
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdfARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
 
Mês da Leitura - Agrupamento de Escolas de Vagos 2024.pdf
Mês da Leitura - Agrupamento de Escolas de Vagos 2024.pdfMês da Leitura - Agrupamento de Escolas de Vagos 2024.pdf
Mês da Leitura - Agrupamento de Escolas de Vagos 2024.pdf
 
Boletim informativo Contacto - março 2024
Boletim informativo Contacto - março 2024Boletim informativo Contacto - março 2024
Boletim informativo Contacto - março 2024
 
Ressonancia_magnetica_basica_slide_da_net.pptx
Ressonancia_magnetica_basica_slide_da_net.pptxRessonancia_magnetica_basica_slide_da_net.pptx
Ressonancia_magnetica_basica_slide_da_net.pptx
 
A CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARX
A CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARXA CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARX
A CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARX
 
Trabalho DAC História 25 de Abril de 1974
Trabalho DAC História 25 de Abril de 1974Trabalho DAC História 25 de Abril de 1974
Trabalho DAC História 25 de Abril de 1974
 
Termo de audiência de Mauro Cid na ìntegra
Termo de audiência de Mauro Cid na ìntegraTermo de audiência de Mauro Cid na ìntegra
Termo de audiência de Mauro Cid na ìntegra
 
FORMAÇÃO POVO BRASILEIRO atividade de história
FORMAÇÃO POVO BRASILEIRO atividade de históriaFORMAÇÃO POVO BRASILEIRO atividade de história
FORMAÇÃO POVO BRASILEIRO atividade de história
 
Apresentação sobrea dengue educação.pptx
Apresentação sobrea dengue educação.pptxApresentação sobrea dengue educação.pptx
Apresentação sobrea dengue educação.pptx
 

Web services

  • 1. Instituto Superior de Entre Douro e Vouga Tecnologias da Informação e da Comunicação│2010/2011 Tecnologias de Internet Trabalho realizado por: Sérgio Paulo Lopes da Rocha Santa Maria da Feira, 03 Dezembro de 2010
  • 2. TP 5 - Trabalho Prático WEB SERVICES Í NDICE 1. Introdução.............................................................................................................. 3 2. Web Services e as Alternativas Tecnológicas (arquitectura)................................. 5 2.1 SOAP (Simple Object Access Protocol)........................................................ 6 2.2 WSDL (Web Service Description Language) ................................................ 8 2.3 UDDI (Universal Description, Discovery and Integration).............................. 9 3. Conclusão............................................................................................................ 12 4. Bibliografia........................................................................................................... 14 Sérgio Rocha - 2104 ISVOUGA Página 2 de 14
  • 3. TP 5 - Trabalho Prático WEB SERVICES 1. INTRODUÇÃO Web Services, é a 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 de Web Services Description Language (WSDL). Web Services fornecem interoperabilidade entre componentes de software que podem estar 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 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. Sérgio Rocha - 2104 ISVOUGA Página 3 de 14
  • 4. TP 5 - Trabalho Prático WEB SERVICES Uma arquitectura orientada a serviços difere de sistemas (OO) e processuais num aspecto: 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 restrições em suas mensagens. A separação entre estrutura e comportamento, e a explícita descrição dessas características simplificam a integração em ambientes heterogéneos. Além disso, esta informação caracteriza completamente a interface do serviço, de forma que a integraçã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 a evolução dos serviços de forma que não prejudiquem aplicações que já os estejam utilizando. Problemas como distribuição e transporte, segurança e autenticação, e controle de transacções, são resolvidos com várias tecnologias e características dos Web Services. Sérgio Rocha - 2104 ISVOUGA Página 4 de 14
  • 5. TP 5 - Trabalho Prático WEB SERVICES 2. WEB SERVICES E AS ALTERNATIVAS TECNOLÓGICAS (ARQUITECTURA) 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, endossado 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 de software 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 geral, UDDI (Universal Description, Discovery and Integration Services), verdadeira espécie de páginas amarelas descrevendo os serviços disponíveis. Sérgio Rocha - 2104 ISVOUGA Página 5 de 14
  • 6. TP 5 - Trabalho Prático 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 concerne o 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, dado que as outras duas, HTTP e XML já foram abordadas em trabalhos anteriores. 2.1 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, conforme se constata na imagem abaixo. 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 recebimento destas mensagens. De notar que a união das tecnologias amplamente disseminadas 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). Sérgio Rocha - 2104 ISVOUGA Página 6 de 14
  • 7. TP 5 - Trabalho Prático WEB SERVICES 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 "desempacota esta mensagem", 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 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. Sérgio Rocha - 2104 ISVOUGA Página 7 de 14
  • 8. TP 5 - Trabalho Prático WEB SERVICES Então, 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. 2.2 WSDL (WEB SERVICE DESCRIPTION LANGUAGE) Trata-se de uma linguagem de definição de interface, baseada em XML, a qual possibilita a descrição das funcionalidades, métodos e atributos disponibilizados pelo Web Service. Consequentemente, permite que uma aplicação descreva as suas funcionalidades e atributos num formato padrão, de tal forma que outra aplicação possa compreendê-la. É considerado como um dos fundamentos que possibilita a especificação consistente de um Web Service. A fim de documentar e expor as funcionalidades de um Web Service, a Microsoft propôs ao W3C a especificação WSDL. Esta define, adicionalmente, regras para a descrição das funcionalidades de um Web Service, utilizando-se para isso do XML. São descritos os métodos e propriedades suportados pelo Web Service, os tipos de dados e os protocolos que podem ser utilizados para o envio e recebimento de mensagens. As informações inseridas nas mensagens são repassadas por meio de operações e palavras-chave da linguagem WSDL, como type, message, operation ou binding. Sérgio Rocha - 2104 ISVOUGA Página 8 de 14
  • 9. TP 5 - Trabalho Prático WEB SERVICES Assumindo que um dos objectivos do Web Services, é permitir que aplicações desenvolvidas em diferentes linguagens ou mesmo modelos de programação diversos possam operar entre si, o mesmo utiliza-se desta tecnologia WSDL. Interessante notar que a mesma, descreve o serviço que será implementado pela lógica do negócio e as interfaces necessárias para os clientes a chamarem. Não haverá a definição da implementação da lógica de negócios. Haverá sim, apenas a descrição da mesma, assumindo um conjunto de ponteiros finais de operações nas mensagens, os quais contêm informações orientadas a documentos ou procedimentos. Por tanto, verifica-se que o WSDL é um formato XML para descrever a interface pela qual um Web Service é usado. 2.3 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á sendo criada. O UDDI vem atender a esta necessidade. Tal como os anteriores formatos, este conceito utiliza-se do padrão XML. A ideia é similar ao que propõe o padrão Corba com o conceito de "repositório de objectos", embora as implementações sejam distintas. Analogamente, trata-se de um serviço similar ao prestado pelas páginas amarelas, excepto pelo facto 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 serviços respectivos, 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; Sérgio Rocha - 2104 ISVOUGA Página 9 de 14
  • 10. TP 5 - Trabalho Prático WEB SERVICES • 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, conforme especifica a imagem abaixo. • 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 de troca Sérgio Rocha - 2104 ISVOUGA Página 10 de 14
  • 11. TP 5 - Trabalho Prático WEB SERVICES (Binding Templates). 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, 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 globais. Sérgio Rocha - 2104 ISVOUGA Página 11 de 14
  • 12. TP 5 - Trabalho Prático WEB SERVICES 3. CONCLUSÃO Em forma de resumo, vale dizer 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 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 Service; Sérgio Rocha - 2104 ISVOUGA Página 12 de 14
  • 13. TP 5 - Trabalho Prático WEB SERVICES • UDDI - Utilizado para o descobrimento e publicação. Trata-se do directório no qual o Web Service pode ser localizado. Sérgio Rocha - 2104 ISVOUGA Página 13 de 14
  • 14. TP 5 - Trabalho Prático WEB SERVICES 4. BIBLIOGRAFIA • http://pt.wikipedia.org/wiki/Web_service • 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/ • http://www.w3.org/TR/wsdl • http://en.wikipedia.org/wiki/Universal_Description_Discovery_and_Integration • http://technet.microsoft.com/pt-br/library/cc783718%28WS.10%29.aspx Sérgio Rocha - 2104 ISVOUGA Página 14 de 14