soa, web services e rest + xml/xsd -...

83
WWW.DOMINANDOTI.COM.BR WWW.DOMINANDOTI.COM.BR Soluções de integração: SOA, web services e REST + XML/XSD Professor Marcelo Pacote [email protected]

Upload: phungtuyen

Post on 09-Nov-2018

281 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R WWW.DOMINANDOTI .COM.BR

Soluções de integração:

SOA, web services e REST + XML/XSD

Professor Marcelo Pacote – [email protected]

Page 2: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Acesse nosso site em

WWW.DOMINANDOTI.COM.BR

Curta o Dominando TI no

e receba nossas dicas sobre concursos!

Cursos Turmas em Brasília, na sua cidade, e cursos online

Livros Edições publicadas, lançamentos e promoções

Fórum Interação direta entre estudantes e com os professores

Simulados Questões inéditas, ranking de notas e correções em vídeo

Blog Dicas e macetes de estudo, indicações de bibliografia, etc.

Materiais Versões atualizadas de notas de aula e listas de exercícios

Page 3: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

XML – eXtensible Markup Language

Voltado para a troca de informações

Formato para descrever dados estruturados

Transporte e armazenamento de dados

O conjunto de tags não é pré-definido

É independente de software e hardware

Mantido pelo W3C.

Baseada em SGML

3 Professor Marcelo Pacote – [email protected]

Page 4: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Partes de um Documento XML

<?xml version=''1.0'' encoding=''iso-8859-1''?> <usuario>

<foto href=''/imagens/logoduke2.gif'' />

<nome>Duke Java</nome>

<endereco>Rua Imaginária, 20 – 4º andar – Centro – 19920 - 321 – Deodoro da Fonseca – RN</endereco>

<email>[email protected]</email>

<telefone tipo=''residencial''>

<ddd>84</ddd>

<numero>32562589</numero>

</telefone>

</usuario>

elemento raiz declaracão XML

atributos

elementos

4 Professor Marcelo Pacote – [email protected]

Page 5: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(ANAC/2012/Cespe/Analista Adm./85)

Um arquivo XML possui atributos e elementos. No exemplo 1, que se segue, sexo é atributo e, no exemplo 2, sexo é elemento, provendo, em ambos os exemplos, a mesma informação.

Professor Marcelo Pacote – [email protected] 5

Page 6: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Documentos XML bem formados

Para que possa ser manipulado como uma árvore, um documento XML precisa ser bem formado.

Regras

Ter um, e apenas um, elemento raiz

Todos os elementos devem ter uma tag de fechamento

Elementos deve estar corretamente aninhados

Valores dos atributos devem estar entre aspas ou apóstrofes. Atributos não devem se repetir em um mesmo elemento.

XML diferencia caracteres maiúsculos de minúsculos (case sensitive)

O próprio navegador pode ser utilizado para verificar as regras.

Há validadores online (http://w3schools.com/xml/xml_validator.asp)

6 Professor Marcelo Pacote – [email protected]

Page 7: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(TRE-MS/2013/Cespe/Analista Judiciário/44) (1/2)

Acima, está mostrado o conteúdo total de um arquivo XML, em que os números à esquerda indicam apenas as linhas em que informações são apresentadas e não fazem parte do conteúdo do arquivo. Tendo como referência essas informações, assinale a opção correta, à luz dos padrões XML.

Professor Marcelo Pacote – [email protected] 7

Page 8: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(TRE-MS/2013/Cespe/Analista Judiciário/44) (2/2)

A) Há erro nas linhas 4 e 9, pois não se pode repetir uma tag, no caso, <marca>.

B) Há erro nas linhas 6 e 11, pois valores de atributos devem ficar entre aspas.

C) Por não haver outra tag igual até o final do documento, não é necessário fechar a tag <carro> introduzida na linha 8.

D) A sintaxe para a descrição da versão e da codificação estão corretamente definidas na linha 1.

E) As tags em XML podem ser maiúsculas ou minúsculas sem distinção, tal como utilizado nas linhas 2 e 12.

Professor Marcelo Pacote – [email protected] 8

Page 9: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

XML Válido

Um XML é dito válido quando for bem formado e estiver de acordo com a gramática que define sua estrutura.

A gramática é definida em um esquema:

elementos fazem parte de um vocabulário limitado

certos atributos têm valores e tipos definidos

elementos são organizados de acordo com uma estrutura hierárquica

DTD e XML Schema são linguagens para descrição de esquemas XML.

9 Professor Marcelo Pacote – [email protected]

Page 10: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

DTD vs. XML Schema

Soluções padrão do W3C

<!ELEMENT contato (nome, email, telefone)> <!ATTLIST contato codigo NMTOKEN #REQUIRED>

DTD

<xsd:schema xmlns:xsd="…/XMLSchema"> <xsd:element name="contato"> <xsd:complexType> <xsd:attribute name="codigo" use="required">

É XML, porém mais complexo Suporta namespaces Permite definição de tipos

Simples mas não é XML Não suporta namespaces Limitado quanto a tipos de dados

XML Schema

10 Professor Marcelo Pacote – [email protected]

Page 11: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(Serpro/2013/Cespe/Sup./92) - Adaptada

( ) Para ser considerado válido, um documento XML precisa estar em conformidade com um DTD (document type definition) ou com um XML Schema.

11 Professor Marcelo Pacote – [email protected]

Page 12: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(Basa/2012/Cespe/Prod. e Infra/111)

( ) DTD (document type definition) e XSD (XML schema description) são dois formatos de interoperabilidade de dados usados no escopo do padrão XML, e, de modo geral, um documento DTD é semanticamente menos expressivo que seu equivalente XSD.

12 Professor Marcelo Pacote – [email protected]

Page 13: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Documentos válidos

Válidos em relação a um XML Schema contém:

Declaração de pelo menos um namespace de aplicação no documento

Declaração de namespace padrão da instância XML Schema

Atributo schemaLocation (do namespace padrão) associando o(s) namespace(s) de aplicação a um (ou mais) documento(s) XML Schema

<bilhete

xmlns="urn:123456789"

xmlns:xsi="http://www.w3.org./2001/XMLSchema-instance"

xsi:schemaLocation="urn:123456789 bilhete.xsd">

13 Professor Marcelo Pacote – [email protected]

Page 14: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

XML Schema: Tipos

Há duas qualidades de tipos

Tipos simples representam tipos de dados básicos como texto, números, tokens, booleanos

Fazem parte do namespace do XML Schema (requerem prefixo associado ao identificador do namespace), por exemplo: xs:int, xs:string

Tipos complexos representam estruturas do documento como entidades, atributos, etc.

14 Professor Marcelo Pacote – [email protected]

Page 15: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

XML Schema

Tipo Simples

não pode conter outros elementos, apenas valor textual

15

<sobrenome>Zouza</sobrenome>

<idade>26</idade>

<dataNasc>1984-11-21</dataNasc>

<xs:element name=“sobrenome" type="xs:string"/>

<xs:element name=“idade" type="xs:integer"/>

<xs:element name=“dataNasc" type="xs:date"/>

Professor Marcelo Pacote – [email protected]

Page 16: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

XML Schema – Tipos Complexos

<xs:element name=“empregado">

<xs:complexType>

<xs:sequence>

<xs:element name=“nome" type="xs:string"/>

<xs:element name=“sobrenome" type="xs:string"

maxOccurs="10" minOccurs="0" />

</xs:sequence>

</xs:complexType>

</xs:element>

<empregado>

<nome>Marcelo</nome>

<sobrenome>Pacote</sobrenome>

</empregado>

Indicador de ordem

Indicador de ocorrência

16 Professor Marcelo Pacote – [email protected]

Page 17: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(SERPRO/2013/Cespe/Analista/116)

Com relação aos conceitos e aplicações de gestão eletrônica de documentos, julgue os itens a seguir.

Em um documento XML, não é possível definir regras de tipos de dados para elementos e atributos, uma vez que o documento é um arquivo do tipo texto.

Professor Marcelo Pacote – [email protected] 17

Page 18: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

XML Schema

<?xml version="1.0"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"

targetNamespace="http://www.xml.com"

xmlns=“http://www.xml.com” elementFormDefault="unqualified">

<xs:element name="nota">

<xs:complexType>

<xs:sequence>

<xs:element name="de" type="xs:string" />

<xs:element name="para" type="xs:string" />

<xs:element name="titulo" type="xs:string" />

<xs:element name="descricao" type="xs:string" />

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:schema>

18 Professor Marcelo Pacote – [email protected]

Page 19: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(TRT/2013/Cespe/Téc. Judiciário/94)

( ) Uma especificação em XML Schema é sempre iniciada com tag <schema> e concluída com tag <//schema>. Todas as declarações de elementos devem ser inseridas entre as duas tags, bem como a definição de atributos e tipos deve ser inserida no corpo do programa.

Professor Marcelo Pacote – [email protected] 19

Page 20: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(TRE-BA/2010/CESPE) (1/2)

Acerca do XML, julgue os itens a seguir.

( ) Em XML, as tags definem elementos de dados e o texto fornece o dado real representado no documento.

( ) A sintaxe básica para um elemento XML pode ser corretamente representada pela instrução a seguir.

<nome_do_elemento>Texto</nome_do_elemento>

( ) Um documento XML pode conter definições para o elemento raiz e para os elementos filhos, podendo também conter elementos vazios.

20 Professor Marcelo Pacote – [email protected]

Page 21: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(TRE-BA/2010/CESPE) (2/2)

( ) A instrução a seguir está sintaticamente correta e permite o uso de algarismos romanos para codificação de números.

<?xml version="1.0" encoding="ISO-8859-1"?>

( ) As marcações XML não fazem distinção entre letras minúsculas e maiúsculas.

( ) Um documento XML sempre deve ter um elemento principal, também conhecido como root tag.

21 Professor Marcelo Pacote – [email protected]

Page 22: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Gabarito

(ANAC/2012/Cespe/Analista Adm./85) c (TRE-MS/2013/Cespe/Analista Judiciário/44) b (Serpro/2013/Cespe/Sup./92) certo (Basa/2012/Cespe/Prod. e Infra/111) certo (SERPRO/2013/Cespe/Analista/116) e (TRT/2013/Cespe/Téc. Judiciário/94) e (TRE-BA/2010/CESPE) ccceec

22 Professor Marcelo Pacote – [email protected]

Page 23: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R WWW.DOMINANDOTI .COM.BR

Web Services

Professor Marcelo Pacote – [email protected]

Page 24: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Web Services

Contexto

Como surgiu?

Interoperabilidade

24 Professor Marcelo Pacote – [email protected]

Page 25: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(ANTT/2013/Cespe/Analista Adm./104)

Julgue os itens a seguir, referentes à arquitetura orientada a serviços (SOA).

( ) Web services provêm um meio padrão para a interoperação entre diferentes aplicativos de software, que podem ser executados em uma variedade de plataformas e(ou) frameworks.

Professor Marcelo Pacote – [email protected] 25

Page 26: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

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

26 Professor Marcelo Pacote – [email protected]

Page 27: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

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 >>

27 Professor Marcelo Pacote – [email protected]

Page 28: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

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).

28 Professor Marcelo Pacote – [email protected]

Page 29: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(MPOG/2013/Cespe/Téc. de Nível Superior V/69)

Com relação à engenharia de software, julgue os próximos itens.

( ) A engenharia de software orientada a serviços possui uma arquitetura com padrões de serviços web por meio de tecnologias XML, como, por exemplo, o SOAP, para a mensageria, e o WSDL, para definição de serviços.

Professor Marcelo Pacote – [email protected] 29

Page 30: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Exercício [01] (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).

30 Professor Marcelo Pacote – [email protected]

Page 31: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Exercício [02] (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.

31 Professor Marcelo Pacote – [email protected]

Page 32: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Exercício [02] (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.

32 Professor Marcelo Pacote – [email protected]

Page 33: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(TRE-MS/2013/Cespe/Téc. Judiciário/57)

Com relação a webservices, assinale a opção correta.

A) Um webservice não pode implementar corretamente uma arquitetura orientada a serviço (SOA).

B) Tarefas como a criação de interfaces gráficas para usuários estão fortemente relacionadas à função de webservice.

C) O webservice consiste em chamadas de métodos em que os seus desenvolvedores utilizam em conjunto tanto XML quanto XLS.

D) A implementação do protocolo SOAP (Simple Object Access Protocol) é utilizado para segurança entre os webservices.

E) As definições de como o webservice deve ser acessado, como, por exemplo, os valores que ele retorna, são descritas em um arquivo XML com a padronização WSDL (Web Service Description Language).

Professor Marcelo Pacote – [email protected] 33

Page 34: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(TRE-MS/2013/Cespe/Analista Judiciário/43) (1/2)

No que se refere a SOA e webservices, assinale a opção correta.

A) O WS-Security propõe uma série de extensões para aprimorar a segurança dos web services no UDDI e no WSDL. Por questão de compatibilidade, essas extensões não afetam os cabeçalhos do envelope SOAP.

B) UDDI é um serviço de diretório em que é possível registrar e localizar web services.

C) WSDL é descrito em formato XML e tem por única função descrever os valores e formatos dos dados que serão intercambiados entre os sistemas.

Professor Marcelo Pacote – [email protected] 34

Page 35: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(TRE-MS/2013/Cespe/Analista Judiciário/43) (2/2)

D) SOAP é um protocolo do tipo statefull, independente de sistema operacional, embasado em troca de mensagem one-way e projetado para ser simples e extensível por meio de tecnologia XML.

E) SOA é uma arquitetura de desenvolvimento cujo objetivo é criar módulos funcionais denominados serviços, fortemente acoplados e independentes de plataforma. É embasada em XML e incentiva reutilização de código e interoperabilidades entre sistemas.

Professor Marcelo Pacote – [email protected] 35

Page 36: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

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);

36 Professor Marcelo Pacote – [email protected]

Page 37: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

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.

37 Professor Marcelo Pacote – [email protected]

Page 38: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Exercício [03] (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.

38 Professor Marcelo Pacote – [email protected]

Page 39: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(MPOG/2013/Cespe/Téc. de Nível Superior V/89)

No que se refere aos padrões WSDL e SOAP, julgue os itens a seguir.

( ) SOAP utiliza o protocolo HTTP como forma de transportar dados na camada de aplicação, permite troca de mensagens baseado em XML e tem seu uso relacionado a web services.

Professor Marcelo Pacote – [email protected] 39

Page 40: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Exercício [04] (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.

40 Professor Marcelo Pacote – [email protected]

Page 41: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

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)

41 Professor Marcelo Pacote – [email protected]

Page 42: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

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>

42 Professor Marcelo Pacote – [email protected]

Page 43: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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.

Professor Marcelo Pacote – [email protected] 43

Page 44: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(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.

Professor Marcelo Pacote – [email protected] 44

Page 45: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

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.

45 Professor Marcelo Pacote – [email protected]

Page 46: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(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.

Professor Marcelo Pacote – [email protected] 46

Page 47: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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.

Professor Marcelo Pacote – [email protected] 47

Page 48: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

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

48 Professor Marcelo Pacote – [email protected]

Page 49: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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 e PortType, e uma parte concreta, que define binding, service e endpoint.

Professor Marcelo Pacote – [email protected] 49

Page 50: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Web Services – Exemplo (1/2)

50 Professor Marcelo Pacote – [email protected]

Page 51: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Web Services – Exemplo (2/2)

51 Professor Marcelo Pacote – [email protected]

Page 52: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

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.

52 Professor Marcelo Pacote – [email protected]

Page 53: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

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.

53 Professor Marcelo Pacote – [email protected]

Page 54: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

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.

UD

DI

54 Professor Marcelo Pacote – [email protected]

Page 55: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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).

Professor Marcelo Pacote – [email protected] 55

Page 56: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

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.

* neutra = indiferente, imparcial

56 Professor Marcelo Pacote – [email protected]

Page 57: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

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

57 Professor Marcelo Pacote – [email protected]

Page 58: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

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?page=2&size=10

58 Professor Marcelo Pacote – [email protected]

Page 59: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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]

Page 60: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Exercício [08] (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.

60 Professor Marcelo Pacote – [email protected]

Page 61: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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]

* difere gabarito definitivo oficial

Page 62: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R WWW.DOMINANDOTI .COM.BR

SOA

Professor Marcelo Pacote – [email protected]

Page 63: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Contextualização

63 Professor Marcelo Pacote – [email protected]

Page 64: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

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.

Organização por meio de processos

64 Professor Marcelo Pacote – [email protected]

Page 65: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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]

Page 66: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(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).

66 Professor Marcelo Pacote – [email protected]

Page 67: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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]

Page 68: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

SOA X Web Services

Web Services

SOA

68 Professor Marcelo Pacote – [email protected]

Page 69: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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.

Professor Marcelo Pacote – [email protected] 69

Page 70: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(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.

Professor Marcelo Pacote – [email protected] 70

Page 71: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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.

Professor Marcelo Pacote – [email protected] 71

Page 72: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(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.

Professor Marcelo Pacote – [email protected] 72

Page 73: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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.

Professor Marcelo Pacote – [email protected] 73

Page 74: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

(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.

Professor Marcelo Pacote – [email protected] 74

Page 75: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Visão SOA

Processo de Negócio

Meta-Aplicações

Serviços

75 Professor Marcelo Pacote – [email protected]

Page 76: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Visão SOA – Exemplo

76

Fonte: http://linux.ime.usp.br/~cef/mac499-06/monografias/filipemadeira/monografia.pdf

Professor Marcelo Pacote – [email protected]

Page 77: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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]

Page 78: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

ESB – Exemplos de produtos

Apache ServiceMix

Oracle Enterprise Service Bus

Open ESB

Mule

Microsoft BizTalk

JBOSS/Glassfish

78 Professor Marcelo Pacote – [email protected]

Page 79: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

Camadas

79 Professor Marcelo Pacote – [email protected]

Page 80: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

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

Serviços são facilmente testados

80 Professor Marcelo Pacote – [email protected]

Page 81: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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]

Page 82: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.B R

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.

82 Professor Marcelo Pacote – [email protected]

Page 83: SOA, web services e REST + XML/XSD - aplicacoes.mds.gov.braplicacoes.mds.gov.br/sagirmps/ferramentas/docs/07-10-2013 - AULA4... · XML – eXtensible Markup Language Voltado para

W W W. D OMI NAND OTI .COM.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]