Baixe o app para aproveitar ainda mais
Prévia do material em texto
W W W. D OMI NAND OTI .COM.B R WWW.DOMINANDOTI .COM.BR Web Services Professor Marcelo Pacote – @professorpacote W W W. D OMI NAND OTI .COM.B R Agenda Web Services UDDI WSDL SOAP REST Professor Marcelo Pacote - @professorpacote 2 W W W. D OMI NAND OTI .COM.B R Web Services Contexto Como surgiu? Interoperabilidade Professor Marcelo Pacote - @professorpacote 3 W W W. D OMI NAND OTI .COM.B R Web Services - modelos Tradicional XML SOAP (Simple Object Access Protocol) WSDL UDDI REST (Representational State Transfer) Baseado em métodos HTTP Professor Marcelo Pacote - @professorpacote 4 W W W. D OMI NAND OTI .COM.B R Web Services - Arquitetura Registro de serviços Serviço cliente Provedor de serviço 1 - Registra-se 2 - Busca serviço 3 - Provê serviço << SOAP >> << SOAP >> << SOAP >> Professor Marcelo Pacote - @professorpacote 5 W W W. D OMI NAND OTI .COM.B R Web Services - Papéis Provedor de serviço: responsável pela descrição e publicação de um determinado serviço Web no registro de serviços. As informações estão representadas em um documento XML escrito na linguagem padrão WSDL(Web Service Description Language); Consumidor do serviço: responsável por descobrir um serviço, obter a sua descrição e usá-lo; Registro dos serviços: mantém um diretório com informações sobre serviços, armazenados no padrão UDDI (Universal Description, Discovery and Integration). Professor Marcelo Pacote - @professorpacote 6 W W W. D OMI NAND OTI .COM.B R [1] (IBGE/2010/CESGRANRIO) (1/2) - adaptada Professor Marcelo Pacote - @professorpacote 7 W W W. D OMI NAND OTI .COM.B R [1] (IBGE/2010/CESGRANRIO) (2/2) - adaptada A figura apresenta um modelo básico de interação suportado por Web Services. Os padrões utilizados para descrever as informações publicadas (ligação 1), localizar serviços (ligação 2) e utilizar serviços (ligação 3), respectivamente, são: a) UDDI, WSDL, SOAP. b) UDDI, SOAP, WSDL. c) WSDL, UDDI, SOAP. d) WSDL, SOAP, UDDI. e) SOAP, UDDI, WSDL. Professor Marcelo Pacote - @professorpacote 8 W W W. D OMI NAND OTI .COM.B R Exercício [2] (ANTAQ/2009/CESPE) ( ) Web service é um conjunto de tecnologias utilizadas na integração de sistemas e na comunicação entre aplicações diferentes. Para a representação e estruturação dos dados nas mensagens recebidas/enviadas, é utilizado o XML (eXtensible markup language). As chamadas às operações, incluindo-se os parâmetros de entrada e saída, são codificadas no protocolo UDDI (universal description, discovery and integration). Os serviços (operações, mensagens, parâmetros etc.) são descritos usando-se a linguagem WSDL (web services description language). O processo de publicação, pesquisa e descoberta de web services utiliza o protocolo SOAP (simple object access protocol). Professor Marcelo Pacote - @professorpacote 9 W W W. D OMI NAND OTI .COM.B R Exercício [3] (TRE/2010/CESPE) (1/2) Com relação a web services, assinale a opção correta. a) As arquiteturas de aplicação de web services são arquiteturas firmemente acopladas, nas quais as ligações entre serviços não podem mudar durante a execução. b) SOAP (Simple Object Access Protocol) é um protocolo com base em HTML que permite troca de informações entre aplicações em um ambiente distribuído. c) UDDI (Universal Description, Discovery and Integration) é um diretório para armazenamento de informações a respeito de web services. Essas informações são descritas em SOAP. Professor Marcelo Pacote - @professorpacote 10 W W W. D OMI NAND OTI .COM.B R Exercício [3] (TRE/2010/CESPE) (2/2) d) A linguagem WSDL (Web Services Description Language) é utilizada para descrever web services. e) Segundo o W3C (World Wide Web Consortium), web services são apropriados somente para aplicações em que componentes de um sistema distribuído são executados em plataformas semelhantes de um mesmo fornecedor. Professor Marcelo Pacote - @professorpacote 11 W W W. D OMI NAND OTI .COM.B R Exercício [4] (MEC/2008/FGV/An. Sistemas)(1/2) Um Web Service é definido pela W3C como um sistema de software projetado para fornecer interoperabilidade entre máquinas em uma determinada rede. Dentro do contexto dos Web Services assinale a alternativa correta. a) A UDDI (Universal Description, Discovery, and Integration) é uma linguagem baseada em XML que descreve o que um Web Service pode fazer, onde ele reside e como chamá-lo. b) SOAP (Simple Object Access Protocol) é um protocolo, baseado em XML, para troca de informação estruturada com Web Services em redes de computadores. Professor Marcelo Pacote - @professorpacote 12 W W W. D OMI NAND OTI .COM.B R Exercício [4] (MEC/2008/FGV/An. Sistemas) (2/2) c) A interoperabilidade entre os Web Services e aplicações é garantida devido ao uso obrigatório da linguagem Java na implementação das aplicações. d) SOA (Simple Object Access) é uma plataforma de arquitetura orientada a serviços, utilizada como base para suportar os Web Services. e) A WSDL (Web Services Description Language) é uma especificação para publicar e localizar informações sobre Web Services. Professor Marcelo Pacote - @professorpacote 13 W W W. D OMI NAND OTI .COM.B R Exercício [5] (MEC/2009/FGV/Arquiteto) (1/2) A respeito das tecnologias relacionadas a Web Services, analise as afirmativas a seguir: I. A UDDI é uma plataforma de arquitetura orientada a serviços assíncronos utilizada como base para suportar os Web Services. II. A WSDL (Web Services Description Language) é uma interface de programação que permite a execução de chamadas remotas no estilo RPC. III. SOAP (Simple Object Access Protocol) é um protocolo, baseado em XML, para troca de informação estruturada com Web Services em redes de computadores. Professor Marcelo Pacote - @professorpacote 14 W W W. D OMI NAND OTI .COM.B R Exercício [5] (MEC/2009/FGV/Arquiteto) (2/2) Assinale: a) se somente a afirmativa I estiver correta. b) se somente a afirmativa II estiver correta. c) se somente a afirmativa III estiver correta. d) se somente as afirmativas II e III estiverem corretas. e) se todas as afirmativas estiverem Professor Marcelo Pacote - @professorpacote 15 W W W. D OMI NAND OTI .COM.B R Exercício [6] (SENADO/2012/FGV) (1/3) Web services surgiram como uma evolução dos modelos de computação distribuída, sendo considerada uma tecnologia de integração de sistemas, empregada principalmente em ambientes heterogêneos. Na arquitetura, web services, são padrões: I. Um protocolo para transmissão dentro da arquitetura proposta pelo W3C, sendo baseado no XML, segue o modelo “REQUEST- RESPONSE” do HTTP. Professor Marcelo Pacote - @professorpacote 16 W W W. D OMI NAND OTI .COM.B R Exercício [6] (SENADO/2012/FGV) (2/3) II. Um arquivo do tipo XML, cuja finalidade é descrever detalhadamente um web service. Essa descrição especifica as operações que compõem o web service e define de forma clara como deve ser o formato de entrada e saída de cada operação. III. Um mecanismo que visa atender tanto o cliente de web service quanto ao provedor. Ele tem que fornecer ao provedor de web services meios para que esses sejam registrados e publicados, o que permitirá a pesquisa e localização dos web services pelos clientes. Professor Marcelo Pacote - @professorpacote 17 W W W. D OMI NAND OTI .COM.B R Exercício [6] (SENADO/2012/FGV) (3/3) Esses padrões são conhecidos pelas siglas: a) SOAP,UDDI e WSDL b) SOAP, WSDL e UDDI c) WSDL, UDDI e SOAP d) UDDI, WSDL e SOAP e) UDDI, SOAP e WSDL Professor Marcelo Pacote - @professorpacote 18 W W W. D OMI NAND OTI .COM.B R Exercício [7] (TJ-SE/2009/FCC) - adaptada Considere dois dos fundamentos que possibilitam a comunicação entre Web services: Protocolo que define I. um mecanismo para a troca estruturada de dados entre Web services; II. como as interfaces dos Web services podem ser representadas. São, respectivamente, Professor Marcelo Pacote - @professorpacote 19 a) HTTP e XML. b) SOAP e WSDL. c) SOAP e XSL. d) DOM e COM+. e) COMM e HTML. W W W. D OMI NAND OTI .COM.B R Exercício [8] (PETROBRAS/2011/CESGRANRIO) O principal uso da internet (www) é o acesso interativo a documentos e aplicações, na maioria dos casos, acessados por pessoas. Entretanto, cresce significantemente o uso dessa arquitetura para comunicação e interoperabilidade através do web-service. Em geral, os web-services oferecem serviços para sua descoberta e para sua descrição, representados, respectivamente, por a) SOAP e WSDL b) UDDI e SOAP c) UDDI e WSDL d) URI e SOAP e) URI e WSDL Professor Marcelo Pacote - @professorpacote 20 W W W. D OMI NAND OTI .COM.B R Exercício [9] (TRT-MT/2011/FCC) (1/2) Em termos de tecnologias utilizadas em Web Services, a representação e estruturação dos dados nas mensagens recebidas/enviadas são realizadas por I. uma linguagem específica; II. as chamadas às operações, incluindo os parâmetros de entrada/saída, são codificadas por um protocolo específico; III. os serviços e suas mensagens, independentemente dos formatos de mensagem e dos protocolos de rede envolvidos são descritos usando outra linguagem específica; IV. o processo de publicação/pesquisa/descoberta de Web Services também utiliza um protocolo específico. Professor Marcelo Pacote - @professorpacote 21 W W W. D OMI NAND OTI .COM.B R Exercício [9] (TRT-MT/2011/FCC) (2/2) Os itens I, II, III e IV, referem-se, respectivamente, a a) CSS, SNMP, WSDL e FDDI. b) XML, SOAP, WSDL e UDDI. c) HTML, UDP, REST e FDDI. d) XML, SNMP, REST e UDDI. e) CSS, XHTML, RUBY e UDPP. Professor Marcelo Pacote - @professorpacote 22 W W W. D OMI NAND OTI .COM.B R Exercício [10] (SENADO/2008/FGV) (1/2) Web Service representa uma solução utilizada na integração de sistemas e na comunicação entre aplicações diferentes e que possui entre suas características as possibilidades: da interação de novas aplicações com as já existentes; da compatibilidade de sistemas desenvolvidos em plataformas diferentes; de as chamadas às operações, incluindo os parâmetros de entrada/saída, serem codificadas em um determinado protocolo. de as aplicações enviarem e receberem dados por meio de uma linguagem em formato padronizado. Professor Marcelo Pacote - @professorpacote 23 W W W. D OMI NAND OTI .COM.B R Exercício [10] (SENADO/2008/FGV) (2/2) Para a construção das bases de um Web Service por padrão, o protocolo e a linguagem são: a) UDDI e XML. b) SOAP e XML. c) UDDI e WSDL. d) UDDI e DHTML. e) SOAP e DHTML. Professor Marcelo Pacote - @professorpacote 24 W W W. D OMI NAND OTI .COM.B R Web Services - SOAP SOAP (Simple Object Access Protocol) é um protocolo para troca de informações estruturadas em uma plataforma descentralizada e distribuída, utilizando tecnologias baseadas em XML. Independente de qualquer modelo de programação ou outra implementação específica. Define um envelope para transmissão de mensagens, oferece regras para representar “remote procedure calls” (RPCs); Professor Marcelo Pacote - @professorpacote 25 W W W. D OMI NAND OTI .COM.B R Web Services - SOAP SOAP possibilita que dois processos ( possivelmente em duas máquinas diferentes) se comuniquem, desconsiderando o hardware e a plataforma que eles estão sendo executados. Um dos grandes benefícios do SOAP é que ele é aberto e foi adotado pela maioria das grandes empresas de hardware e software. Professor Marcelo Pacote - @professorpacote 26 W W W. D OMI NAND OTI .COM.B R Exercício [11] (RF-AP/2010/FGV) (1/2) Web Service representa um termo utilizado na integração de sistemas e na comunicação entre aplicações diferentes e que possui entre suas características as possibilidades de: I. interação de novas aplicações com as já existentes. II. compatibilizar sistemas desenvolvidos em plataformas diferentes. III. serem codificadas em um determinado protocolo, incluindo os parâmetros de entrada/saída. IV. aplicações enviarem e receberem dados por meio de uma linguagem em formato padronizado. Professor Marcelo Pacote - @professorpacote 27 W W W. D OMI NAND OTI .COM.B R Exercício [11] (RF-AP/2010/FGV) (2/2) Para a construção das bases de um Web Service, por padrão a linguagem é conhecida como XML e o protocolo pela sigla: a) SOAP. b) UDDI. c) HTTPS. d) SCHEMA. e) XPOINTER. Professor Marcelo Pacote - @professorpacote 28 W W W. D OMI NAND OTI .COM.B R Exercício [12] (Serpro/2013/Cespe/Desv./107 ) ( ) A comunicação entre sistemas clientes e servidores para troca de mensagens pode ser realizada por meio de SOAP (simple object access protocol), que é um protocolo para troca de informações estruturadas independente de linguagem de programação. Professor Marcelo Pacote - @professorpacote 29 W W W. D OMI NAND OTI .COM.B R Exercício [13] (STJ/2008/CESPE) ( ) O SOAP encapsula mensagens que podem ser transmitidas via HTTP; permite o modelo de interação cliente-servidor; define como usar XML para representar mensagens de requisição e resposta. Um documento XML é transportado no corpo de uma mensagem SOAP; no modelo cliente-servidor, o corpo de uma mensagem SOAP pode conter uma requisição, mas não uma resposta. Professor Marcelo Pacote - @professorpacote 30 W W W. D OMI NAND OTI .COM.B R Web Services – Mensagem SOAP MENSAGEM SOAP ENVELOPE SOAP CABEÇALHO SOAP Cabeçalhos CORPO SOAP Dados da mensagem específica - Envelope: define o conteúdo da mensagem (obrigatório) - Cabeçalho: contém informação de controle e processamento (opcional) - Corpo: contém informação da chamada e da resposta (obrigatório) Professor Marcelo Pacote - @professorpacote 31 W W W. D OMI NAND OTI .COM.B R Web Services – Mensagem SOAP POST /cadirreg HTTP/1.1 Host: www.tcu.gov.br Content-Type: text/xml; charset="utf-8" Content-Length: 256 <SOAP:Envelope xmlns:SOAP= "http://www.w3.org/2001/12/soap-envelope"> <SOAP:Header> <!-- conteudo do cabecalho --> </SOAP:Header> <SOAP:Body xmlns:tcu="http://www.tcu.gov.br/cadirreg"> <tcu:GetInfoGestor> <cpf>87598930104</cpf> </tcu:GetInfoGestor> </SOAP:Body> </SOAP:Envelope> Professor Marcelo Pacote - @professorpacote 32 W W W. D OMI NAND OTI .COM.B R Exercício [14] (EPE/2006/CESGRANRIO) Sobre os Serviços Web são feitas as seguintes afirmativas. I - O SOAP pode ser transportado por protocolos como HTTP, SMTP e JMS. II - Uma mensagem SOAP permite encapsular chamadas RPC. III - Uma mensagem SOAP é um documento XML que pode conter três partes: o envelope, o cabeçalho e o corpo. Está(ão) correta(s) a(s) afirmativa(s): Professor Marcelo Pacote - @professorpacote 33 a) I, apenas. b) II, apenas. c) III, apenas. d) Ie II, apenas. e) I, II e III. W W W. D OMI NAND OTI .COM.B R Exercício [15] (MPE-RS/2008/FCC) A identificação do documento XML, como uma mensagem SOAP, está contida no elemento da estrutura SOAP denominado a) root. b) body. c) envelope. d) fault. e) header. Professor Marcelo Pacote - @professorpacote 34 W W W. D OMI NAND OTI .COM.B R Exercício [16] (SENADO/2012/FGV) A respeito de mensagens SOAP, assinale a alternativa correta. a) O elemento Envelope deve usar o namespace http://www.w3.org/2001/12/soap-envelope b) O elemento Envelope não é obrigatório em uma mensagem SOAP. c) O elemento Body não é obrigatório em uma mensagem SOAP. d) O elemento Fault é obrigatório em uma mensagem SOAP e) O elemento Header é obrigatório em uma mensagem SOAP Professor Marcelo Pacote - @professorpacote 35 W W W. D OMI NAND OTI .COM.B R Web Services - WSDL WSDL (Web Services Description Language) é uma linguagem baseada em XML utilizada para descrever Web Services. Trata-se de um documento escrito em XML que além de descrever o serviço, especifica como acessá-lo e quais as operações ou métodos disponíveis. Professor Marcelo Pacote - @professorpacote 36 W W W. D OMI NAND OTI .COM.B R Web Services - WSDL Definem como a interface é implementada por um fornecedor Figura obtida em http://en.wikipedia.org/wiki/Web_service Professor Marcelo Pacote - @professorpacote 37 W W W. D OMI NAND OTI .COM.B R Web Services – Exemplo (1/2) Professor Marcelo Pacote - @professorpacote 38 W W W. D OMI NAND OTI .COM.B R Web Services – Exemplo (2/2) Professor Marcelo Pacote - @professorpacote 39 W W W. D OMI NAND OTI .COM.B R Exercício [17] (SENADO/2012/FGV) O elemento WSDL que descreve as portas (port) de um serviço web é: a) <binding> b) <message> c) <ports> d) <portType> e) <service> Professor Marcelo Pacote - @professorpacote 40 W W W. D OMI NAND OTI .COM.B R Exercício [18] (MPE-RN/2010/FCC) (adaptada) Para enviar uma mensagem a um determinado Web Service, o cliente acessa o documento que contém a descrição do serviço e, em seguida, constrói a mensagem, passando os tipos de dados corretos, de acordo com a definição encontrada neste documento. Esse documento é o a) SAML (Security Assertion Markup Language). b) UDDI (Universal Description Discovery and Integration). c) XHTML (eXtensible Hypertext Markup Language). d) XML (eXtensible Markup Language). e) WSDL (Web Service Description Language). Professor Marcelo Pacote - @professorpacote 41 W W W. D OMI NAND OTI .COM.B R Exercício [19] (STJ/2008/CESPE) ( ) O WSDL separa a parte abstrata de uma descrição de serviço da parte concreta; nessa descrição, a parte concreta contém as definições de tipos usados pelo serviço e a parte abstrata especifica como e onde o serviço pode ser contatado. Os documentos WSDL podem ser acessados via um serviço de diretório como o UDDI; as definições WSDL podem ser geradas a partir de definições de interfaces escritas em outras linguagens. Professor Marcelo Pacote - @professorpacote 42 W W W. D OMI NAND OTI .COM.B R [20] (PETRO/2012/CESGRANRIO/Analista Jun.) Qual linguagem baseada em XML é usada para descrever serviços Web (Web services)? a) XML Schema b) WSDL c) XLink d) XPointer e) SOAP Professor Marcelo Pacote - @professorpacote 43 W W W. D OMI NAND OTI .COM.B R Web Services - UDDI UDDI (Universal Description, Discovery and Integration) é uma especificação que define um serviço de registro para Web Services. Usuários de serviços podem usar UDDI para descobrir serviços que lhes interessem e obter os metadados necessários para utilizar esses serviços. Professor Marcelo Pacote - @professorpacote 44 W W W. D OMI NAND OTI .COM.B R UDDI Páginas brancas: contêm nome da empresa, endereço, números de telefone e outros identificadores relativos ao negócio onde a empresa atua; Páginas amarelas: baseadas em categorias Páginas verdes: contêm informações técnicas sobre os serviços expostos pelo provedor. U D D I Professor Marcelo Pacote - @professorpacote 45 W W W. D OMI NAND OTI .COM.B R Exercício [21] (LIQUIGAS/CESGRANRIO/2012/BD) (1/2) No contexto de serviços Web, o padrão UDDI define o conceito de página. A finalidade das páginas a) amarelas é descrever como acessar um serviço, com informações sobre os meios de ligação (binding) a esse serviço. b) azuis é descrever os servidores que dão suporte à especificação UDDI e que pertencem a um registro UDDI. c) brancas é dar informações sobre a instituição (corporação) que fornece um serviço a ser consumido. Professor Marcelo Pacote - @professorpacote 46 W W W. D OMI NAND OTI .COM.B R Exercício [21] (LIQUIGAS/CESGRANRIO/2012/BD) d) verdes é fornecer uma classificação do serviço ou de negócios, com base em taxonomias padronizadas. e) vermelhas é informar sobre os mecanismos de tratamento de exceções fornecidos por um serviço a ser consumido. Professor Marcelo Pacote - @professorpacote 47 W W W. D OMI NAND OTI .COM.B R Exercício [22] (TRT/2008/CESPE) - adaptada ( ) O UDDI é uma especificação técnica que tem como objetivo descrever, descobrir e integrar web services. É embasado na tecnologia XML, que fornece uma plataforma neutra de dados. * neutra = indiferente, imparcial Professor Marcelo Pacote - @professorpacote 48 W W W. D OMI NAND OTI .COM.B R Exercício [23] (ANA/2009/ESAF) Na arquitetura de Web Services, o componente que compreende um serviço de diretórios para armazenamento de descrições de serviços é a) o Protocolo de Acesso a Objetos Simples (SOAP). b) a Descrição, Descoberta e Integração Universal (UDDI). c) a Linguagem de Definição de Web Services (WSDL). d) a Linguagem de Marcação Hiper-Texto (HTML). e) a Arquitetura TCP/IP. Professor Marcelo Pacote - @professorpacote 49 W W W. D OMI NAND OTI .COM.B R Exercício [24] (TRT-14/2011/FCC) De acordo com a OASIS, é um elemento central do grupo de padrões que compõem a pilha de componentes dos serviços web e que têm como objetivo descrever, descobrir e integrar tais serviços. Trata-se de a) WSDL. b) SOAP. c) UDDI. d) DHCP. e) XSL. Professor Marcelo Pacote - @professorpacote 50 W W W. D OMI NAND OTI .COM.B R Estratégias de trabalho e ferramentas Bottom up Primeiro se desenvolve código. WSDL é gerado a partir dele. Top down São gerados stubs a partir do WSDL Ferramentas Axis Apache CXF SpringWS Professor Marcelo Pacote - @professorpacote 51 W W W. D OMI NAND OTI .COM.B R REST – Representational State Transfer Outra abordagem para implementação de Web Services CRUD com métodos HTTP Create (HTTP POST) Retrieve (HTTP GET) Update (HTTP PUT) Delete (HTTP DELETE) + Simplicidade, baixo overhead de comunicação - Segurança, controle transacional Professor Marcelo Pacote - @professorpacote 52 W W W. D OMI NAND OTI .COM.B R REST – Exemplos e WADL WADL (Web Application Description Language) está para REST assim como WSDL está para SOAP. Cada recurso (substantivo, entidade) é modelado como uma URI http://editoraexemplo.com.br/api/livros http://editoraexemplo.com.br/api/livros/7 http://editoraexemplo.com.br/api/livros/7/depoimentos?pa ge=2&size=10 Professor Marcelo Pacote - @professorpacote 53 W W W. D OMI NAND OTI .COM.B R Exercício [25] (TJ-RO/2008/CESGRANRIO) (1/2) Diversos frameworks e APIs, incluindo a Java API for XML Web Services (JAX-WS), provêem suporte para uma abordagem arquitetural chamada REST (Representational State Transfer) para a criação de web services simples, que utilizam apenas o protocolo HTTP, dispensando uma camada de mensagens como o SOAP. Para tanto, cada serviço é disponibilizado na forma de um recurso associado a uma URL e os métodos do protocolo HTTP são utilizados para "comandar" ações de inclusão, atualização, exclusão e consulta de dados. Vista sob este prisma, a World Wide Web em si é um exemplo da abordagem arquitetural REST. Professor Marcelo Pacote - @professorpacote 54 W W W. D OMI NAND OTI .COM.B R Exercício [25] (TJ-RO/2008/CESGRANRIO) (2/2) NÃO corresponde a um método previsto no protocolo HTTP/1.1: a) DELETE b) GET c) INSERT d) POST e) PUT Professor Marcelo Pacote - @professorpacote 55 W W W. D OMI NAND OTI .COM.B R Exercício [26] (REFAP/2007/CESGRANRIO) O estilo arquitetural REST (Representational State Transfer) para WEB tem como característica: a) permitir o uso de RPC diretamente sobre SSL, para aplicações seguras. b) acelerar a transferência do FTP com a implementação de cache. c) combater o SPAM, utilizando redes neurais como técnica de aprendizagem. d) usar SOAP para interoperabilidade entre sistemas heterogêneos. e) utilizar os métodos HTTP: GET, POST, PUT e DELETE. Professor Marcelo Pacote - @professorpacote 56 W W W. D OMI NAND OTI .COM.B R Exercício [27] (PETR/2008/CESGRANRIO) A interoperabilidade entre aplicações nos dias atuais é fortemente baseada no uso de web services. Duas abordagens arquiteturais distintas para o projeto e implementação de web services têm-se firmado no cenário de tecnologia. São elas: a) REST e WS-* b) SOAP e WSDL c) RPC e RMI d) SGML e HTML e) B2B e B2C Professor Marcelo Pacote - @professorpacote 57 W W W. D OMI NAND OTI .COM.B R Exercício [28] (TCU/2010/CESPE) (adaptada) ( ) O estilo de arquitetura de software denominado REST (representational state transfer) demanda mais recursos computacionais que o modelo de desenvolvimento de sistemas embasado em SOAP (single object access protocol). Professor Marcelo Pacote - @professorpacote 58 W W W. D OMI NAND OTI .COM.B R Exercício [29] (MPU/2010/CESPE/Técnico) ( ) REST (Representationals State Transfer) é uma tecnologia que está sendo utilizada em web services, como substituta das tecnologias SOAP (Simple Object Access Protocol) e WSDL. Professor Marcelo Pacote - @professorpacote 59 W W W. D OMI NAND OTI .COM.B R Exercício [30] (Serpro/2013/Cespe/Desv./108) ( ) Um web service pode ocorrer sobre o HTTP (hypertext transfer protocol), utilizando-se os serviços RESTfull (representational state transfer). Professor Marcelo Pacote - @professorpacote 60 W W W. D OMI NAND OTI .COM.B R Exercício [31] (BNDES/2011/CESGRANRIO/Analista) Um programador, ao analisar determinado sistema WEB,observa o arquivo a seguir. { “menu” : “m1” , “acoes” : [ {“titulo” : “X” , “desc” : “A”}, {“titulo” : “Y” , “desc” : “B”}, {“titulo” : “Z” , “desc” : “C”}] } Qual o formato desse arquivo? Professor Marcelo Pacote - @professorpacote 61 a)JSON b) REST c) SOAP d) XSLT e)XML W W W. D OMI NAND OTI .COM.B R Gabarito dos Exercícios [01] c [02] errado [03] d [04] b [05] c [06] b [07] b [08] c [09] b [10] b [11] a [12] certo [13] errado [14] e [15] c [16] a [17] e [18] e [19] errado [20] b [21] c [22] certo [23] b [24] c [25] c [26] e [27] a [28] errado [29] certo [30] certo Professor Marcelo Pacote - @professorpacote 62 [31] a W W W. D OMI NAND OTI .COM.B R WWW.DOMINANDOTI .COM.BR Anexo I Exercícios Complementares Professor Marcelo Pacote – @professorpacote W W W. D OMI NAND OTI .COM.B R [1] (UNIPAMPA-RS/2009/CESPE) – adaptada (1/2) Julgue os próximos itens, a respeito de tecnologias Web. ( ) Webservice pode ser definido como um software projetado para oferecer suporte à interoperabilidade entre as máquinas de uma rede de comunicação. Um Webservice possui interface descrita em formato processável como, por exemplo, SOAP. Outros sistemas interagem com o Webservice da forma prescrita por sua descrição, utilizando mensagens WSDL, tipicamente por meio de protocolo HTTP com serialização XML em conjunto com outros padrões Web. Professor Marcelo Pacote - @professorpacote 64 W W W. D OMI NAND OTI .COM.B R [1] (UNIPAMPA-RS/2009/CESPE) – adaptada (2/2) ( ) Quando um documento XML tem sintaxe correta, considera- se que ele seja bem formado. Para ser válido, o documento XML precisa, além ser bem formado, seguir obrigatoriamente as regras de uma DTD (Document Type Definition) ou XML SCHEMA especificados. Professor Marcelo Pacote - @professorpacote 65 W W W. D OMI NAND OTI .COM.B R Exercício [2] (TCU/2010/CESPE) (1/2) ( ) Considere que o líder da equipe solicite a um programador do projeto que analise o seguinte trecho de código de um documento XML. <service name="StockQuoteService"> <documentation>My first service</documentation> <port name="StockQuotePort" binding="tns:StockQuoteBinding"> <soap:address location="http://example.com/stockquote"/> </port> </service> Professor Marcelo Pacote - @professorpacote 66 W W W. D OMI NAND OTI .COM.B R Exercício [2] (TCU/2010/CESPE) (2/2) Nessa situação, se o programador disser que esse trecho de documento é provavelmente de declaração de serviço web com base na tecnologia WSDL (web services description language) e que, embora o serviço descrito contenha uma única porta, é possível a definição de várias portas associadas a um mesmo serviço, a análise feita deverá ser considerada correta. Professor Marcelo Pacote - @professorpacote 67 W W W. D OMI NAND OTI .COM.B R Exercício [3] (TCU/2010/CESPE) (1/2) ( ) Considere que o líder tenha solicitado a um programador do projeto que comentasse o seguinte trecho de código. POST /objectURI HTTP/1.1 Host: www.foo.com SOAPMethodName: urn:develop-com:IBank#getBalance Content-Type: text/xml Content-Length: 1234 Professor Marcelo Pacote - @professorpacote 68 W W W. D OMI NAND OTI .COM.B R Exercício [3] (TCU/2010/CESPE) (2/2) O comentário do programador teria sido correto se ele dissesse que esse código é provavelmente o esqueleto de um pedido http que foi invocado sobre o servidor http (hypertext transfer protocol) de endereço www.foo.com, embasado no modelo de comunicação SOAP (simple object access protocol), que apenas o cabeçalho do pedido está sendo apresentado e que o pedido completo deve possuir em seu corpo um documento XML com 1.234 bytes de tamanho. Professor Marcelo Pacote - @professorpacote 69 W W W. D OMI NAND OTI .COM.B R Exercício [4] (TJ-ES/2011/CESPE/ANALISTA) ( ) A Web Services Description Language Version 2.0 permite a descrição da interface dos serviços, incluindo-se o descritivo das mensagens que são trocadas entre o cliente e o provedor. Essas mensagens são descritas no nível abstrato, em que o serviço é definido como uma coleção de portas em rede, e no nível concreto,no qual são descritos detalhes de implementação. Professor Marcelo Pacote - @professorpacote 70 W W W. D OMI NAND OTI .COM.B R Exercício [5] (PREVIC/2011/CESPE/ANALISTA) ( ) Web services são sistemas embasados na Web que oferecem serviços gerais para aplicações remotas, não requerendo interações imediatas de usuários finais. Professor Marcelo Pacote - @professorpacote 71 W W W. D OMI NAND OTI .COM.B R Exercício [6] (TRT-4/2011/FCC/ANALISTA) Especificação desenvolvida pelo World Wide Web Consortium, que permite descrever os Web Services segundo um formato XML. É extensível para permitir a descrição dos serviços e suas mensagens, independentemente dos formatos de mensagem e dos protocolos de rede utilizados. Trata-se de a) SOAP. b) WSDL. c) UDDI. d) SamL. e) Ws-i. Professor Marcelo Pacote - @professorpacote 72 W W W. D OMI NAND OTI .COM.B R Exercício [7] (DPE/2010/FCC) Arquitetura orientada a serviço é um novo conceito, no qual cria-se um ambiente de descoberta dinâmico e se faz o uso de Serviços Web através da rede. NÃO é uma tecnologia usada nos serviços Web disponibilizados a) WSDL. b) XML. c) SOA. d) SOAP. e) UDDI. Professor Marcelo Pacote - @professorpacote 73 W W W. D OMI NAND OTI .COM.B R Exercício [8] (COFEN/2010/CONSULPLAN) Sobre o protocolo HTTP (Hypertext Transfer Protocol), o método responsável por solicitar o armazenamento de uma página Web, é: a) GET b) HEAD c) PUT d) POST e) TRACE Professor Marcelo Pacote - @professorpacote 74 W W W. D OMI NAND OTI .COM.B R Exercício [9] (IBGE/2008/CONSULPLAN) Marque a alternativa correta para a sigla SOAP baseada em XML: a) É um padrão aberto que não pode ser usado com protocolos comuns de Internet como HTTP e SMTP b) A sigla significa Simple Objects Access Private. c) É um modelo de plataforma .Net d) Linguagem baseada em tags e) É um padrão aberto, criado para padronizar a transferência de dados entre aplicações. Professor Marcelo Pacote - @professorpacote 75 W W W. D OMI NAND OTI .COM.B R Exercício [10] (SENADO/2008/FGV) - adaptada Considere as assertivas a seguir sobre as relações entre SOAP, WSDL e UDDI: I. UDDI é um diretório de serviços web descritos por WSDL. II. WSDL pode ser usado para descrever serviços SOAP. III. O UDDI é um diretório de descrições SOAP. As assertivas corretas são: a) somente I. b) somente I e II. c) somente I e III. d) somente II e III. e) I, II e III. Professor Marcelo Pacote - @professorpacote 76 W W W. D OMI NAND OTI .COM.B R Exercício [11] (MEC/2008/FGV/Arquiteto) (1/2) Aplicações orientadas a serviços necessitam que os protocolos de comunicação sejam robustos, pois são altamente dinâmicas e podem ser alteradas constantemente. A grande maioria das aplicações orientadas a serviços atuais utiliza, para comunicação, o SOAP, que é definido como: a) um Web Service que gerencia informação sobre provedores, implementações e metadados de serviços. b) um protocolo aprovado como padrão pela OASIS e especifica um método para publicar e descobrir diretórios de serviços. Professor Marcelo Pacote - @professorpacote 77 W W W. D OMI NAND OTI .COM.B R Exercício [11] (MEC/2008/FGV/Arquiteto) (2/2) c) uma linguagem baseada em XML utilizada para descrever Web Services. Trata-se de um documento escrito em XML que além de descrever o serviço, especifica como acessá-lo e quais as operações ou métodos disponíveis. d) uma interface de programação que permite a execução de chamadas remotas no estilo RPC em aplicações desenvolvidas em Java. e) um protocolo para troca de informações estruturadas em uma plataforma descentralizada e distribuída, utilizando tecnologias baseadas em XML. Professor Marcelo Pacote - @professorpacote 78 W W W. D OMI NAND OTI .COM.B R Exercício [12] (MEC/2008/FGV/Ger. Projetos) (1/2) Web service constitui uma solução para integração de sistemas e para comunicação entre aplicações diferentes. Ela permite que novas aplicações possam interagir com aquelas que já existem e que sistemas desenvolvidos em plataformas diferentes sejam compatíveis. A Web service apresenta as seguintes características: I. as aplicações enviam e recebem dados por meio de uma linguagem em formato padronizado. II. as chamadas às operações, incluindo os parâmetros de entrada/saída, empregam um determinado protocolo. Professor Marcelo Pacote - @professorpacote 79 W W W. D OMI NAND OTI .COM.B R Exercício [12] (MEC/2008/FGV/Ger. Projetos) (2/2) Por padrão, o protocolo e a linguagem são, respectivamente: a) SOAP e XML b) SOAP e AJAX c) PHYTON e XML d) SOAP e ASP.NET e) PHYTON e ASP.NET Professor Marcelo Pacote - @professorpacote 80 W W W. D OMI NAND OTI .COM.B R [13] (PETR/2006/CESGRANRIO) (1/2) - adaptada Quais das características a seguir estão associadas a Webservices? I - Utilização de protocolo para prover a definição de informações, baseadas em XML, que são utilizadas para troca de informações estruturadas e tipadas, em um ambiente distribuído e descentralizado; II – Utilização de uma linguagem que define uma gramática em formato XML com objetivo de descrever serviços capazes de trocar mensagens entre si; III – Utilização de um método para descoberta e chamada de Webservices; Professor Marcelo Pacote - @professorpacote 81 W W W. D OMI NAND OTI .COM.B R [13] (PETR/2006/CESGRANRIO) (2/2) - adaptada IV - dispor de uma ontologia para descrição semântica dos serviços. a) I e II, apenas. b) II e III, apenas. c) I, II e III, apenas. d) I, II e IV, apenas. e) II, III e IV, apenas. Professor Marcelo Pacote - @professorpacote 82 W W W. D OMI NAND OTI .COM.B R Exercício [14] (CGU/ESAF/2012) Assinale a opção correta. a) A API de solicitação de MDD é usada para consultar um registrador MDD por condições de acesso. b) A APL de atualização de UDDI é usada para consultar um usuário UDDI por informações sobre localização de uma empresa. c) A UDDI é usada para manter a consistência de registradores API de prioridade de uma empresa. d) A API de solicitação de UDDI é usada para consultar um registrador UDDI por informações sobre uma empresa. e) A API de solicitação de UDDL é usada para consultar um usuário de UDDL por informações sobre interesses de negócio de uma empresa. Professor Marcelo Pacote - @professorpacote 83 W W W. D OMI NAND OTI .COM.B R Exercício [15] (PETRO/2012/CESGRANRIO/Analista) (1/2) Sobre protocolos, linguagens de descrição e outros recursos encontrados no universo das arquiteturas orientadas a serviços (SOA), considere as afirmativas a seguir. I - SOAP é um protocolo baseado em XML para troca de informações em um ambiente distribuído. II - WSDL é uma linguagem baseada em XML, utilizada para descrever um Web Service. III - WPDL é uma plataforma de SOA utilizada para suportar os Web Services. Professor Marcelo Pacote - @professorpacote 84 W W W. D OMI NAND OTI .COM.B R [15] (PETRO/2012/CESGRANRIO/Analista) (2/2) É correto APENAS o que se afirma em a) I b) II c) III d) I e II e) II e III Professor Marcelo Pacote - @professorpacote 85 W W W. D OMI NAND OTI .COM.B R [16] (TJ-RO/CESGRANRIO/2008) (1/3) Em um ambiente SOA (Arquitetura Orientada a Serviços), mensagens são trocadas entre web services e seus clientes, que podem inclusive ser outros web services, utilizando as especificações UDDI, WSDL e SOAP. Considere que o web service (nó) que origina uma mensagem é chamado de remetenteSOAP inicial (initial SOAP sender) e que o web service a que a mensagem se destina em última análise é chamado de destinatário SOAP definitivo (ultimate SOAP receiver). Entre o remetente SOAP inicial e o destinatário SOAP definitivo, zero ou mais intermediários SOAP (SOAP intermediaries) podem ser utilizados.Levando em consideração o que foi exposto, assinale a afirmação correta. Professor Marcelo Pacote - @professorpacote 86 W W W. D OMI NAND OTI .COM.B R [16] (TJ-RO/CESGRANRIO/2008) (2/3) a) A especificação do caminho de uma mensagem (message path), que determina a rota entre o remetente SOAP inicial e o destinatário SOAP definitivo, é de crescente importância em ambientes SOA, e deve ser sempre conhecida a priori, pelo remetente SOAP inicial, de forma a garantir que a mensagem chegue ao destinatário SOAP definitivo, atendendo aos requisitos de reliability (confiabilidade). b) A definição WSDL é dividida em três partes: uma descrição abstrata da interface do serviço, uma descrição concreta com informações sobre transporte e localização e uma meta-descrição do roteamento de mensagens que o serviço pode oferecer. Professor Marcelo Pacote - @professorpacote 87 W W W. D OMI NAND OTI .COM.B R [16] (TJ-RO/CESGRANRIO/2008) (3/3) c) As mensagens em um ambiente SOA devem ser do estilo RPC (Remote Procedure Call), mais adequado aos princípios SOA do que o estilo “Documento” (Document), que é menos granular e forma mensagens independentes cujo reuso é muito menor quando comparado ao estilo RPC. d) Uma mensagem SOAP possui como elemento raiz o <Envelope>, que por sua vez pode conter os elementos de primeiro nível <Header>, com informações do cabeçalho, <Body>, que é o conteúdo propriamente dito da mensagem e <Fault>, contendo diretivas de ação para o caso de ocorrência de erros durante o transporte ou processamento da mensagem. e) Blocos do cabeçalho (header blocks) SOAP de uma mensagem podem ser especificados, e até mesmo alterados em trânsito por intermediários SOAP, para acomodar meta-informação como instruções de processamento para serviços intermediários, medidas de segurança e controle transacional. Professor Marcelo Pacote - @professorpacote 88 W W W. D OMI NAND OTI .COM.B R [17] (PETRO/2012/CESGRANRIO/Analista Jun.) SOA e Web services utilizam interfaces de serviço para definir o que será solicitado e o que deve ser retornado como resultado do processamento do serviço. No entanto, problemas surgem quando a SOA e os consumidores de Web services se baseiam em estruturas de dados que possuem certas discrepâncias. Qual a tecnologia usada para resolver esse tipo de problema? a) DTD b) XSLT c) XQuery d) XLink e) XSL-FO Professor Marcelo Pacote - @professorpacote 89 W W W. D OMI NAND OTI .COM.B R Exercício [18] (PETROBRAS/CESGRANRIO/2012) Qual linguagem baseada em XML é usada para descrever serviços Web (Web Services)? a) XML Schema b) WSDL c) XLink d) XPointer e) SOAP Professor Marcelo Pacote - @professorpacote 90 W W W. D OMI NAND OTI .COM.B R Exercício [19] (PETROBRAS/CESGRANRIO/2012) Sobre protocolos, linguagens de decrição e outros recursos encontrados no universo das arquiteturas orientadas a serviços (SOA), considere as afirmativas a seguir. I. SOAP é um protocolo baseado em XML para a troca de informações em um ambiente distribuído. II. WSDL é uma linguagem baseada em XML, utilizada para descrever um Web Service. III. WPDL é uma plataforma de SOA utilizada para suportar os Web Services. É correto APENAS o que se afirma em a) I b) II c) III d) I e II e) II e III Professor Marcelo Pacote - @professorpacote 91 W W W. D OMI NAND OTI .COM.B R [20] (LIQUIGAS/CESGRANRIO/2012/INFRA) (1/2) Utilizado em serviços web, o protocolo SOAP é baseado em XML. PORQUE A sintaxe de mensagens SOAP é independente de sistema operacional. Analisando-se as afirmativas acima, conclui-se que a) as duas afirmações são verdadeiras, e a segunda justifica a primeira. b) as duas afirmações são verdadeiras, e a segunda não justifica a primeira. Professor Marcelo Pacote - @professorpacote 92 W W W. D OMI NAND OTI .COM.B R [20] (LIQUIGAS/CESGRANRIO/2012/INFRA) (2/2) c) a primeira afirmação é verdadeira, e a segunda é falsa. d) a primeira afirmação é falsa, e a segunda é verdadeira. e) as duas afirmações são falsas. Professor Marcelo Pacote - @professorpacote 93 W W W. D OMI NAND OTI .COM.B R Exercício [21] (LIQUIGAS/CESGRANRIO/2012/BD) Considere o fragmento de documento WSDL apresentado a seguir. O fragmento apresentado descreve um exemplo de operação do tipo a) notification b) one-way c) request-response d) solicit-response e) two-way <message name="newTermVals"> <part name="term" type="xs:string"/> <part name="value" type="xs:string"/> </message> <portType name="glossaryTerms"> <operation name="setTerm"> <input name="newTerm“ message="newTermVals"/> </operation> </portType > Professor Marcelo Pacote - @professorpacote 94 W W W. D OMI NAND OTI .COM.B R Exercício [22] (STJ/2008/CESPE) ( ) O serviço UDDI fornece uma interface para publicar e atualizar informações acerca de serviços web; possibilita pesquisar descrições WSDL pelo nome; provê uma interface que possibilita executar consultas de modo a recuperar uma entidade que corresponda a uma chave ou recuperar entidades que correspondam a um conjunto de critérios de busca. Professor Marcelo Pacote - @professorpacote 95 W W W. D OMI NAND OTI .COM.B R Exercício [23] (BR-DIST/CESGRANRIO/2012/JAVA-WEB) Existem diversos papéis nos quais a arquitetura orientada a serviços (SOA) é baseada. Dentre esses papéis, encontram-se o Requisitante do Serviço e o Provedor do Serviço. Qual tecnologia pode ser utilizada pelo Requisitante de Serviços para enviar requisições ao Provedor do Serviço? a) MIME b) SMTP c) UDDI d) WSDL e) SOAP Professor Marcelo Pacote - @professorpacote 96 W W W. D OMI NAND OTI .COM.B R [24] (BR-DIST/CESGRANRIO/2012/INFRA) (1/2) A figura abaixo ilustra esquematicamente os três papéis sobre os quais a arquitetura orientada a serviços (SOA) é baseada. Os números nas setas indicam a sequência de ações a ser tomada por um Requisitante do Serviço. Professor Marcelo Pacote - @professorpacote 97 W W W. D OMI NAND OTI .COM.B R [24] (BR-DIST/CESGRANRIO/2012/INFRA) (2/2) Nessa figura, o papel Registro de Serviços é responsável por disponibilizar uma lista de interfaces dos serviços disponíveis aos requisitantes. Qual tecnologia é utilizada pelo Registro de Serviços para cumprir com essa responsabilidade? a) HTTP b) MIME c) RPC d) SOAP e) UDDI Professor Marcelo Pacote - @professorpacote 98 W W W. D OMI NAND OTI .COM.B R [25] (ELETROBRAS/CESGRANRIO/2010/Eng.Software) Dois órgãos públicos federais trocam, na Internet, informações por meio de Web Services. Nesse contexto, que especificação foi criada para descrever, descobrir e integrar serviços? a) UDDI b) WSDL c) SMTP d) DNS e) SOAP Professor Marcelo Pacote - @professorpacote 99 W W W. D OMI NAND OTI .COM.B R [26] (PETRO/CESGRANRIO/2010/Eng. Software) Um web service é qualquer serviço disponível através da Internet que usa um sistema padronizado de troca de mensagens e é independente de sistema operacional e linguagem de programação. Opcionalmente, o serviço se autodescreve além de prover mecanismos para que sejamdescobertos. Relacione as funções listadas na coluna da esquerda com as tecnologias correspondentes listadas na coluna da direita. Professor Marcelo Pacote - @professorpacote 100 W W W. D OMI NAND OTI .COM.B R [26] (PETRO/CESGRANRIO/2010/Eng. Software) Funções I - Transporte do serviço II - Codificação da mensagem III - Descrição do serviço IV - Descoberta do serviço Estão corretas as associações a) I – Q , II – P , III – T , IV –S b) I – Q , II – P , III – T , IV –U c) I – R , II – P , III – Q , IV –S d) I – R , II – P , III – Q , IV –U e) I – R , II – Q , III – T , IV –U Tecnologias P – HTML Q – XML R – HTTP S – URI T – WSDL U - UDDI Professor Marcelo Pacote - @professorpacote 101 W W W. D OMI NAND OTI .COM.B R [27] (PETRO/CESGRANRIO/2010/Proc. Negócio) É uma característica inerente à tecnologia de serviços Web (Web services) o uso do a) protocolo SAX para permitir a localização de serviços Web disponíveis em uma rede. b) WSDL para a definição de diretórios de serviços Web, para que os mesmos sejam encontrados em uma intranet. c) UDDI para identificação do usuário remetente da requisição endereçada ao serviço Web. d) XML para dar suporte à comunicação, independente de plataforma de hardware, entre aplicações. e) XHTML para produzir o resultado de uma requisição feita ao serviço Web. Professor Marcelo Pacote - @professorpacote 102 W W W. D OMI NAND OTI .COM.B R Exercício [28] (RF-AP/2010/FGV) (1/2) Originalmente SOAP representava um protocolo para troca de informações estruturadas em uma plataforma descentralizada e distribuída, utilizando tecnologias baseadas em um determinada linguagem. Foi importante para o desenvolvimento de aplicações que permitiram a comunicação via Internet entre programas, empregando o Remote Procedure Calls (RPC) entre objetos como DCOM e CORBA. Atualmente, SOAP provê um caminho de comunicação entre aplicações "rodando" em diferentes sistemas operacionais, com diferentes tecnologias e linguagens de programação. . Professor Marcelo Pacote - @professorpacote 103 W W W. D OMI NAND OTI .COM.B R Exercício [28] (RF-AP/2010/FGV) (2/2) De acordo com o enfoque do World Wide Web Consortium - W3C, as mensagens SOAP são documentos baseados na seguinte linguagem: a) WSDL b) XML c) JAVASCRIPT d) AJAX e) XSLT Professor Marcelo Pacote - @professorpacote 104 W W W. D OMI NAND OTI .COM.B R Gabarito do Anexo [01] errado, certo [02] certo [03] certo [04] certo [05] certo [06] b [07] c [08] c [09] e [10] a [11] e [12] a [13] c [14] d [15] d [16] e [17] b [18] b [19] d [20] b [21] b [22] certo [23] e [24] e [25] a [26] e [27] d [28] b Professor Marcelo Pacote - @professorpacote 105
Compartilhar