Monica vasconcelos (1)
Upcoming SlideShare
Loading in...5
×
 

Monica vasconcelos (1)

on

  • 508 views

 

Statistics

Views

Total Views
508
Views on SlideShare
508
Embed Views
0

Actions

Likes
0
Downloads
3
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft Word

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Monica vasconcelos (1) Monica vasconcelos (1) Document Transcript

    • ISVOUGAInstituto Superior entre Douro e Vouga Trabalho de tecnologias de Informática Docente: Drº Nuno PeixotoDiscente: Mónica Vieira de Vasconcelos
    • Tecnologias da InformáticaÍndice1.INTRODUÇÃO 32 .WEB SERVICES 52.1 O que é um Serviço? 62.2 Arquitetura Orientada a Serviços 62.3 Tecnologias chave de Web Services 83. SOAP 94. WSDL 105. UDDI 136. CONCLUSÃO 167. BIBLIOGRAFIA Mónica Vasconcelos 2
    • Tecnologias da Informática1 - INTRODUÇÃOWeb Services, consiste na mais recente evolução nos padrões de desenvolvimento deaplicações distribuídas, permitindo que aplicações cooperem facilmente e compartilheminformações e dados umas com as outras. Espera-se que esta evolução altere a formacomo 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 codificadasem XML, enviadas através de HTTP e que são descritas através deWeb ServicesDescription Language (WSDL). Web Services fornecem capacidade a um sistema parainteragir e comunicar com outro entre componentes de software que pode mestar emdiferentes empresas e podem residir em diferentes infra-estruturas. O SOAP é baseadoem 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 entrediferentes plataformas. O WSDL, que também é baseado em XML e “navega”sobreHTTP, fornece a descrição do serviço possibilitando a integração dele com ferramentasde desenvolvimento e de gestão de componentes. No WSDL de um Web Servicesestão descritos a URL para cessar o serviço, o nome do Web Service, a descrição decada método e a forma de fazer a requisição utilizando SOAP, GET ou POST. Uma dasprincipais razões para o crescente interesse em Web Services é que eles permitemuma Arquitectura Orientada a Serviços (SOA - Service-Oriented Architecture). Quandose utiliza Web Services para a construção de tal arquitectura, as soluções consistem decolecções de serviços autónomos, identificados por URLs, com interfacesdocumentadas através de WSDL e processando mensagens XML. SOA é umcomplemento a abordagens orientadas a objectos (OO) e processuais.A web services é uma arquitectura orientada a serviços difere de sistemas (OO) eprocessuais 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ãoentregues. Sistemas (OO) e processuais ligam os elementos baseando-se em tipos enomes. Diferente de sistemas anteriores, o modelo de Web Services não opera sobre anoção de tipos compartilhados que requerem implementações comuns. Em vez disso,os serviços interagem baseando-se somente em contratos e esquemas. Isto permiteque o serviço descreva a estrutura das mensagens que ele pode enviar e/ou receber eestabelecer limitações nas suas mensagens. A separação entre estrutura e Mónica Vasconcelos 3
    • Tecnologias da Informáticaprocedimento, e a precisa descrição dessas características simplificam a adaptação emambientes heterogéneos. Além disso, esta informação caracteriza completamente ainterface do serviço, de forma que a adaptação da aplicação não requer um ambientede execução compartilhado para criar a estrutura ou o comportamento das mensagens.Web Services, utilizam características de XML, esquemas e cabeçalhos SOAP parapermitir o desenvolvimento dos serviços de forma que não ponha em causa aplicaçõesque já os estejam a utilizar. Mónica Vasconcelos 4
    • Tecnologias da Informática2 - WEB SERVICESAs 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çõesmais críticas. SOA consiste num paradigma computacional que emergiu comoconsequência direta da necessidade de colaboração e integração de componentesfuncionais, disponibilizados nesse contexto como serviços, entre empresas, de formainteroperável e com fraco acoplamento. Web Services é uma implementação poderosadessa arquitetura, que podem ser basicamente definidos como uma interface pararecursos computacionais, acessível através da troca de mensagens baseadas em XMLe 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 umsegmento da indústria de tecnologia foi a formação de um consórcio, designado comoWeb Services Interoperability Organization (WS-I), objectivando o desenvolvimento depadrões. Tal grupo reuniu grandes líderes do mercado de tecnologia, tais como IBM,Microsoft, SAP, Oracle, BEA System, Fujitsu entre outras, apoiado por duasimportantes empresas de consultoria nesta área: o Gartner Group e a ForresterResearch. A reunião destes grandes competidores foi marcada, espantosamente, pelointeresse genuíno e autêntico de se estabelecer padrões satisfatórios para todos osenvolvidos. Adiciona-se a isto o fato de que este consórcio, mais nitidamente atravésda Microsoft, vem trabalhando junto ao W3C, entidade responsável pela padronizaçãode diversas linguagens e protocolos de Internet, numa proposta visando apadronização do SOAP (Simple Object Access Protocol) e de outros padrões que dãosuporte 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á seracessada 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 detais padrões é importante para o desenvolvimento de aplicações distribuídas com WebServices. Portanto, um Web Service poderá ser utilizado internamente, por uma únicaaplicação ou por várias aplicações da mesma empresa, podendo ser exposto atravésda Internet, a fim de ser utilizado por qualquer aplicação, bastando para isso que aaplicação seja capaz de entender SOAP e XML. Acrescente-se ao uso do XML, HTTPe SOAP a necessidade de uma linguagem que esclareça sobre sintaxe, parâmetros, Mónica Vasconcelos 5
    • Tecnologias da Informáticamétodos ou funções, a WSDL (Web Services Description Language) e um directóriogeral, UDDI(Universal Description, Discovery and Integration Services), verdadeiraespécie depáginas amarelas descrevendo os serviços disponíveis.WEB SERVICES tais nomenclaturas compõem o conjunto de tecnologias aceites pelospadrões acordados entre os fornecedores, acima citados, e propostos ao W3C no quediz 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 deutilidade pública como, telefonia, água, eletricidade, provedores de Internet, etc. Umserviço representa uma funcionalidade disponibilizada ao público em geral. No mundocomputacional, um serviço está disponível num ponto particular de uma rede decomputadores, recebe e envia mensagens e comporta-se de acordo com suaespecificação. Os aspectos funcionais de um serviço são descritos utilizandometadados, e as limitações e as condições que estão associadas com o uso do serviçosã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çãodo serviço são publicadas de forma que os utilizadores possam descobrir e recebertoda a informação de que eles precisam para se associar, muitas vezesdinamicamente, à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 ambienteonde está hospedado um cliente do serviço possa aceder e interagir com ele de formabem sucedida.2.2 Arquitetura Orientada a ServiçosA Arquitetura Orientada a Serviços é um paradigma arquitetural específico que oferecefraco acoplamento e associação dinâmica entre serviços. Ela permite que organizaçõescolaborem entre si competências para resolver ou suportar soluções para problemas Mónica Vasconcelos 6
    • Tecnologias da Informáticaque encontram no decorrer de seus negócios, integrando componentes funcionaisdistribuídos de modo transparente e homogéneo. Os princípios que servem como basepara a arquitetura estão ilustrados na figura que se segue. Consumidor de Serviços Associar Descobrir Provedor Registo de de Serviços serviços Publicar Figura.1 - Arquitetura Orientada a ServiçosPrimeiro, é necessário fornecer uma definição abstrata do serviço, incluindo osdetalhes 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çosde forma que aqueles que desejam utilizá-los, possam entender mais precisamente oque eles fazem e terem conhecimento de quais procedimentos devem ser tomadospara se conectarem a eles.Terceiro, os consumidores de serviços precisam ter alguma forma de descobrir quaisserviços disponíveis atendem as suas necessidades. Para que esse tripéassociar/publicar/descobrir, trabalhe satisfatoriamente, padrões devem ser definidospara administrar o que e como publicar, como descobrir uma informação, e detalhesespecíficos sobre como se associar a um serviço. Mónica Vasconcelos 7
    • Tecnologias da InformáticaO 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 asinformações necessárias sobre como se associar a um serviço. Essa informaçãodescritiva (metadados) sobre o serviço é publicada no registo de serviços. Oconsumidor de serviços usa o registo de serviços para descobrir os serviços pelosquais 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çoselecionado.2.3 Tecnologias chave de Web ServicesA Web Services, uma das concepções mais bem sucedidas da Arquitetura Orientada aServiços que podem ser definidos como um método de integração de dados eaplicações via padrões XML através de plataformas computacionais e sistemasoperacionais.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 AccessProtocol). Na Web Services são descritos aos clientes e a outras aplicações servidorasatravés do uso de outro formato XML que se denomina WSDL (Web ServicesDescription Language). Informação de registo e localização de um Web Service quepode ser publicada num diretório UDDI (Universal Description, Discovery andIntegration).No núcleo da tecnologia de Web Services, XML desempenha um papel fundamentalpor ser facilmente transportável, compatível e comum com a camada de transporte pelaqual é transmitida em todos os formatos de comunicação. A figura 2 ilustra como XMLestá posicionadomna base dos três principais padrões adotados para formar atecnologia de Web Services. Outros padrões também compatíveis com Web Servicesempregam XML como sua linguagem básica. Mónica Vasconcelos 8
    • Tecnologias da Informática SOAP WSDL UDDI LINGUAGEM XML Figura 2 – Linguagem XML como base de Web Services3. SOAP (SIMPLE OBJECT ACCESS PROTOCOL)É utilizado para invocar serviços remotos de forma síncrona ou assíncrona de um WebService. 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 desteprotocolo padrão (SOAP) para o envio e recepção destas mensagens. De notar que aunião das tecnologias amplamente difundidas HTTP e XML deram origem aos demaiselementos que compõem a plataforma Web Services, como o protocolo SOAP, porexemplo. Vale ainda citar, a título de referência, que este protocolo ainda se encontraem fase de estudo junto ao W3C, conforme citado, sendo que esta entidade referendao mesmo como XML Protocol (XMLP).No contexto de Web Services, um software hipotético de e-commerce formata umamensagem com informações do produto e do local de destino, na forma de umamensagem XML, a qual é encapsulada no formato SOAP, a fim de ser transportadapelo 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, oqual é 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 duasvantagens em relação a tais protocolos:1) Não se utiliza de mecanismos de selecção dinâmica de "ports" e, portanto, podeprocessar facilmente através de "firewalls" padrões; Mónica Vasconcelos 9
    • Tecnologias da Informática2) Pelo facto de ser derivado do padrão XML pode ser utilizado para disporargumentos de qualquer aplicação para qualquer outra aplicação, não importando otipo de sistema, linguagem de programação ou sistema distribuído. Basicamente, esteprotocolo compõe-se de três partes:1) Um envelope que define um "framework", o qual descreve o que a mensagemcontém e como processá-la;2) Um conjunto de regras codificadas para expressar instâncias dos tipos definidos daaplicaçã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 qualinformação específica de aplicações pode ser trocada. É um standard que permitegrande expansibilidade e interoperabilidade entre sistemas. Esta interoperabilidadepoderá 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 descreverserviços de rede como um conjunto de pontos de acesso que funcionam através demensagens contendo informação orientada ao documento ou orientada aoprocedimento. As operações e as mensagens são descritas de forma abstrata e ligadasconcretamente ao protocolo de transporte e ao formato da mensagem para definir umponto de acesso. Pontos de acesso concretos e relacionados são combinados empontos de acesso abstratos (serviços). WSDL é extensível para permitir que adescrição de pontos de acesso e suas mensagens não levem em consideração quaisformatos de mensagem ou protocolos de transporte que estão a ser usados nacomunicação.O provedor (desenvolvedor) de um Web Service utiliza a WSDL para construir umdocumento 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, asassinaturas 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 Mónica Vasconcelos 10
    • Tecnologias da Informáticacomunicação, são disponibilizados para a conquista independente de plataforma elinguagem.O uso da WSDL proporciona algumas vantagens: 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 menosimpacto às aplicações clientes SOAP.A descoberta dinâmica de descrições WSDL permite que tais mudanças sejamrepassadas automaticamente aos clientes que estejam a utilizar WSDL, de forma a quemodificações difíceis no código do cliente não tenham que ser feitas a cada mudançaocorra. Mónica Vasconcelos 11
    • Tecnologias da Informática4.1 Estrutura do Documento WSDLA estrutura sintática do documento WSDL como mostra a figura. <definitions> DESCRIÇÃO ABSTRATA <types> … </types> <message> .... </message> <portType> .... </portType> DESCRIÇÃO CONCRETA <binding> .... </binding> <service> .... </service> </definitions> Figura -3 estrutura sintática do documento WSDLUm documento WSDL organiza-se em duas seções lógicas: uma descrição abstrata euma descrição concreta. A parte abstrata, composta pelos elementos<types>,<message> e <portType>, descreve o comportamento de um Web Service em Mónica Vasconcelos 12
    • Tecnologias da Informáticarelação às mensagens que ele consome e produz. A parte concreta ocupa-se eminformar como e onde aceder a implementação de um serviço. Essas informações sãocobertas pelos elementos <binding> e <service>.Arquivos WSDL iniciam com um elemento raiz <definitions>, que contém geralmenteatributos definindo namespaces que descrevem quais XML Schemas são usados aolongo do documento WSDL.O elemento <types> engloba a definição dos tipos de dados relevantes para asmensagens trocadas entre o serviço e o cliente. Todas as mensagens que possam vir aser trocadas entre o consumidor do serviço e o serviço são listadas no documentoWSDL através do emprego do elemento <message>. Esse elemento é responsável pordefinir de forma abstrata o conteúdo das mensagens.O elemento <portType> define um conjunto de operações relacionadas que um WebService suporta. Uma operação é um agrupamento das mensagens que podem sertrocadas 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çãoconcreta 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 seuelemento filho <port> ele indica o endereço de rede onde o Web Service estálocalizado.5. UDDI (UNIVERSAL DESCRIPTION, DISCOVERY AND INTEGRATION) O aplicativoque irá utilizar um Web Service necessita identificar, ou descobrir, a existência domesmo. Ao criar-se uma aplicação de e-commerce, são necessários mecanismos para Mónica Vasconcelos 13
    • Tecnologias da Informáticacatalogar e localizar Web Services com funcionalidades específicas e que possam serutilizados pela aplicação que está ser criada. O UDDI vem acompanhar estanecessidade. Tal como os anteriores formatos, este conceito utiliza padrão XML. Aideia é similar ao que propõe o padrão Corba com o conceito de"repositório deobjectos", embora as implementações sejam distintas. Analogamente, trata-se de umserviço similar ao prestado pelas páginas amarelas, excepto pelo fato de serem asmesmas electrónicas. Estas provêem uma estrutura de informações, na qual váriasentidades 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óciocomo indústria, produto ou geograficamente, de forma a permitir uma buscaoptimizada. Existem dois tipos de registos: Públicos, os quais servem como pontos de agregação para uma variedade denegócios publicarem os seus serviços; Privados, os quais servem um papel similar nas organizações. A analogia que sefaz a este protocolo em face de uma arquitectura utilizando-se do J2EE ou mesmoCORBA, são os protocolos JNDI Repos ou LDAP.A especificação UDDI consiste de umesquema de 4 camadas dispostas hierarquicamente, as quais provêem um modelobase de informação para publicar, validar e invocar informações a respeito de um WebService. Entidade de Negócio - o elemento no nível mais elevado de um registo UDDIcaptura o conjunto inicial de informações requeridas por parceiros, pesquisando paralocalizar informações a respeito de serviços de negócio, incluindo aí o nome, o tipo deindústria, categoria do produto, sua localização geográfica, categorizações opcionais einformações de contacto; Serviço de Negócio - esta estrutura agrupa uma série de Web Servicesrelacionados de tal forma, que eles possam ser relacionados a ambos os processos denegócio, quanto por categorias de serviços. Este agrupamento possibilita uma melhoroptimização no tempo de pesquisa; Informações de troca (Bind Information) - cada Web Service de negócio tem umou 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 nomomento de se invocar um serviço ou quando está a ocorrer uma troca com umdestes. Estas informações referem- se ao endereço URL e o servidor, por exemplo; Mónica Vasconcelos 14
    • Tecnologias da Informática Informações de concordância - são informações que possibilitam a um clientedeterminar 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 aordem 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; Mónica Vasconcelos 15
    • Tecnologias da Informática6. CONCLUSÃOPode concluir-se que o modelo de funcionamento da Web Service segue uma linha queremete ao seguinte fluxo. Uma aplicação é desenvolvida, utilizando-se de qualquer tipode linguagem de programação. Tal aplicação possui uma série de interfacesformalizadas, as quais são publicadas em WSDL, a entidade responsável pelaaplicaçã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 serdirectórios de Servidores Web. Qualquer outra aplicação que necessite dasfuncionalidades daquela desenvolvida, pesquisa os registos UDDI e localiza osserviços correspondentes. Finalmente, é então invocado o serviço desejado, utilizando-se das informações armazenadas no registo UDDI, especificamente, o URL do serviçoa ser localizado e a interface WSDL para ser utilizado. Por fim, e a respeito das trêstecnologias fundamentais para a implementação do conceito de Web Services: • SOAP- Utilizado para acesso e transporte. Trata-se do protocolo utilizado para invocar umWeb Service, WSDL, Utilizado para descrição. Trata-se da descrição ou definição deum Web, UDDI, Utilizado para o descobrimento e publicação. Trata-se do directório noqual o Web Service pode ser localizado. Mónica Vasconcelos 16
    • Tecnologias da Informática7. BIBLIOGRAFIAhttp://pt.wikipedia.org/wiki/Web_servicehttp://msdn.microsoft.com/pt-br/library/cc564893.aspxhttp://www.w3schools.com/webservices/default.asphttp://pt.wikipedia.org/wiki/SOAPhttp://www.w3schools.com/soap/ Mónica Vasconcelos 17