Web Services
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)
41 Professor Marcelo Pacote – [email protected]
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>
W W W. D O M I N A N D OT I .CO M . B R
(PEFOCE/2012/Cespe/Perito Criminal/75)
( ) SOAP é um protocolo leve destinado à troca de informações estruturadas em um ambiente distribuído e descentralizado. Uma mensagem SOAP, por exemplo, é um documento XML composto de três partes obrigatórias: envelope, cabeçalho e corpo.
(CNJ/2013/Cespe/Analista Judiciário/71)
( ) Um dos elementos de uma mensagem SOAP é o corpo (body), no qual devem estar contidas as informações de erro e status.
W W W. D O M I N A N D OT I .CO M . 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.
45 Professor Marcelo Pacote – [email protected]
(MPOG/2013/Cespe/Téc. de Nível Superior V/90)
( ) Um documento WSDL é estruturado em HTML e descreve web services como um conjunto de pontos de serviço que operam baseados em trocas de protocolo de rede. As operações e mensagens relativas a um serviço são descritas de forma específica, ligados a protocolos de rede, sem formatos de mensagens concretos e com o objetivo de definir um ponto de serviço.
W W W. D O M I N A N D OT I .CO M . B R
(CNJ/2013/Cespe/Analista Judiciário/70)
Acerca de interoperabilidade de sistemas, julgue os itens subsequentes.
( ) A linguagem WSDL é utilizada para descrever web services limitadas ao tipo request-response.
Web Services - WSDL
Definem como a interface é implementada
W W W. D O M I N A N D OT I .CO M . B R
(CPRM/2013/Cespe/Analista /82)
Com relação a interoperabilidade de sistemas, julgue os itens a seguir.
( ) A WSDL 2.0 possui uma parte abstrata, responsável por definir
type, messages, operations
ePortType
, e uma parte concreta, que definebinding, service e endpoint.
W W W. D O M I N A N D OT I .CO M . B R
Web Services – Exemplo (2/2)
51 Professor Marcelo Pacote – [email protected]
Exercício [05] (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.
W W W. D O M I N A N D OT I .CO M . 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.
53 Professor Marcelo Pacote – [email protected]
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.
W W W. D O M I N A N D OT I .CO M . B R
(CNJ/2013/Cespe/Analista Judiciário/72)
( ) Nos registros de negócio UDDI, a descrição da forma de acesso aos
web services
é um procedimento contido nas páginas verdes (green pages
).Exercício [06] (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.
W W W. D O M I N A N D OT I .CO M . 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 transacional57 Professor Marcelo Pacote – [email protected]
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
W W W. D O M I N A N D OT I .CO M . B R
Exercício [07] (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).
59 Professor Marcelo Pacote – [email protected]
Exercício [08] (MPU/2010/CESPE/Técnico)
( ) REST (
Representationals State Transfer
) é uma tecnologia que está sendo utilizada emweb services
, como substituta das tecnologias SOAP (Simple Object Access Protocol
) e WSDL.W W W. D O M I N A N D OT I .CO M . B R
Gabarito dos Exercícios
[01] errado [02] d [03] certo [04] errado [05] errado [06] certo [07] errado [08] certo (ANTT/2013/Cespe/Analista Adim./104) c
(MPOG/2013/Cespe/Téc. de Nível Superior V/69) c (TRE-MS/2013/Cespe/Téc. Judiciário/57) e
(TRE-MS/2013/Cespe/Analista Judiciário/43) b (MPOG/2013/Cespe/Téc. de Nível Superior V/89) c (PEFOCE/2012/Cespe/Perito Criminal/75) e
(CNJ/2013/Cespe/Analista Judiciário/71) e
(MPOG/2013/Cespe/Téc. de Nível Superior V/90) e (CNJ/2013/Cespe/Analista Judiciário/70) e
(CPRM/2013/Cespe/Analista/82) e*
(CNJ/2013/Cespe/Analista Judiciário/72) c
61 Professor Marcelo Pacote – [email protected]
W W W. D O M I N A N D OT I .CO M . B R
Contextualização
63 Professor Marcelo Pacote – [email protected]
Introdução
Estratégia que propõe a organização dos ativos de software de forma que eles possam representar processos, atividades ou tarefas de negócio de forma direta.
Provimento de serviços
Devem ser baseados em padrões e facilmente combinados e reutilizados.
W W W. D O M I N A N D OT I .CO M . B R
Introdução
Visa integrar sistemas existentes e futuros Agrupa processos de negócios
Trata-os como serviços interoperáveis
65 Professor Marcelo Pacote – [email protected]
(BASA/2012/Cespe/Tec. Científico/Redes/108)
( ) Aplicações legadas que rodam em plataforma alta podem ser expostas como serviço e integradas em aplicações desenvolvidas para plataforma baixa, mediante uma abordagem de arquitetura orientada a serviço (SOA).
W W W. D O M I N A N D OT I .CO M . B R
Características e termos chave
Baixo acoplamento
Componentes independentes que interagem por meio de interfaces bem definidas
Neutralidade de implementação
Linguagens de programação, plataforma de hardware ou qualquer outro elemento tecnológico não são limitantes.
Interoperabilidade
Permite que sistemas coexistam e se comuniquem Agrega flexibilidade à arquitetura
67 Professor Marcelo Pacote – [email protected]
SOA X Web Services
Web
W W W. D O M I N A N D OT I .CO M . B R
(MPOG/2013/Cespe/TI/105)
No que se refere ao SOA (service-oriented architeture), julgue os itens a seguir.
( ) O SOA garante serviços fortemente acoplados, fracamente coesos e com alta possibilidade de reutilização.
(MPOG/2013/Cespe/TI/106)
( ) De acordo com o SOA, um limite representa a fronteira entre a interface pública de um serviço e sua realização privada. Ultrapassar limites em SOA é barato e altamente recomendado porque torna o serviço público e acessível a outros sistemas.
W W W. D O M I N A N D OT I .CO M . B R
(MPOG/2013/Cespe/TI/107)
( ) O SOA promove a integração entre o negócio e a tecnologia da informação por meio de serviços, que são o principal componente dessa arquitetura.
(MPOG/2013/Cespe/Téc. de Nível Superior V/71)
No que diz respeito à análise e ao projeto orientados a objetos, julgue os itens que se seguem.
( ) A arquitetura orientada a serviço (SOA) é uma forma de representar-se a tecnologia por meio de uma arquitetura que dá suporte a serviços, composições e inventário de serviços, de forma otimizada.
W W W. D O M I N A N D OT I .CO M . B R
(ANAC/2012/Cespe/Analista Adm./80)
( ) Ao utilizar-se a arquitetura orientada a serviços (SOA), segue-se um conceito de arquitetura corporativa, situação em que os códigos são gerados para toda a empresa e são reutilizados de maneira eficiente e por várias aplicações.
(ANTT/2013/Cespe/Analista Adm./106)
( ) A SOA pode ser definida como um tipo de arquitetura que utiliza serviços como blocos de construção para facilitar a integração em ambientes corporativos e a reutilização de componentes por meio do baixo acoplamento.
W W W. D O M I N A N D OT I .CO M . B R Visão SOA
Processo de Negócio
Meta-AplicaçõesServiços
75 Professor Marcelo Pacote – [email protected]W W W. D O M I N A N D OT I .CO M . B R
ESB – Enterprise Service Bus
SOA
ESB (Enterprise Service Bus)
Serviço Serviço Serviço
Front-End
Meta-Aplicações
77 Professor Marcelo Pacote – [email protected]
ESB – Exemplos de produtos
Apache ServiceMix
Oracle Enterprise Service Bus Open ESB
Mule
Microsoft BizTalk JBOSS/Glassfish
W W W. D O M I N A N D OT I .CO M . B R
Camadas
79 Professor Marcelo Pacote – [email protected]
Vantagens
Diminuição do número de redundâncias de funcionalidades Baixo acoplamento entre aplicações
Alta interoperabilidade entre plataformas Alta reutilização das regras de negócio
Redução de custos
Resposta rápida a mudanças nos processos de negócio Agilidade nas mudanças
W W W. D O M I N A N D OT I .CO M . B R
SOA – Modelo Operacional Triangular
Paradigma “procura-consolida-executa” (find-bind-execute)
Registro de serviços Usuário de serviços Provedor de serviço Registra Procura Executa (Consolida e Requisita) 81 Professor Marcelo Pacote – [email protected]
Arquitetura Orientada a Serviços
SOA é uma arquitetura fracamente acoplada. Os serviços disponibilizados podem ser reutilizados e aplicados em diferentes áreas dentro e fora da organização sem ajustar a tecnologia subjacente.
Um serviço consiste da funcionalidade que precisa ser especificada no contexto do negócio e em termos do contrato entre o provedor e o consumidor. Os detalhes de implementação podem ser omitidos.
Em SOA os serviços são partes de um ou mais processos de negócio distribuídos.
W W W. D O M I N A N D OT I .CO M . B R
Gabarito
(BASA/2012/Cespe/Tec. Científico/Redes/108) certo (MPOG/2013/Cespe/TI/105) e
(MPOG/2013/Cespe/TI/106) e (MPOG/2013/Cespe/TI/107) c
(MPOG/2013/Cespe/Téc. de Nível Superior V/71) c (ANAC/2012/Cespe/Analista Adm./79) c
(ANTT/2013/Cespe/Analista Adim./106) c
83 Professor Marcelo Pacote – [email protected]