![Page 1: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/1.jpg)
Web ServicesWeb Services
Equipe:Cláudia Brito Lyra Nunes da Silva
Clindemberg Mendes PatrícioLuiz Eugênio Fernandes TenórioMarcelo Faro do Amaral LemosMarco Antônio Costa Simões
Paula Geralda Barbosa CoelhoSimith
![Page 2: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/2.jpg)
Tópicos Web Services CORBA e Web Services SOAP & WSDL UDDI WSFL ebXML
![Page 3: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/3.jpg)
Web Services
![Page 4: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/4.jpg)
Integração de Aplicações O desafio da interoperação entre
ambientes heterogêneos
![Page 5: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/5.jpg)
Integração de Aplicações Diversidade de componentes
EJB, CORBA, DCOM ... Diversidade de linguagens
Java, C/C++, C# ... Firewalls Falta de padrões para
interoperação
![Page 6: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/6.jpg)
Integração de Aplicações Definindo o formato para troca de
dados
![Page 7: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/7.jpg)
Business-to-Business Aplicações se conhecem e
conversam entre si
![Page 8: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/8.jpg)
Web Services Aplicações oferecem serviços que
podem ser acessados dinamicamente
![Page 9: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/9.jpg)
Web Services Próxima geração de serviços baseados na
internet que utiliza padrões da indústria, como XML, SOAP, UDDI e ebXML, para conectar aplicações e provê novos serviços via Internet serviços mais robustos e integrados
Nova “onda” de componentes serviços como componentes reutilizáveis “blocos” que integrados produzirão novos
serviços
![Page 10: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/10.jpg)
Web Services Definição
Modelo computacional distribuído fracamente acoplado utiliza mecanismos de transporte padrão (HTTP e
HTTPS) modelo de programação síncrona e assíncrona utiliza XML para o transporte de dados
Descrito através de metadados (XML) Localizável através de pesquisas em
diretórios de serviços
![Page 11: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/11.jpg)
Web Services Service-oriented
paradigma de orientação a serviços Serviços inteligentes
coarse grained services Tecnologia
basicamente é XML sobre HTTP XML: porque o mercado concorda HTTP: livre acesso através de firewalls
![Page 12: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/12.jpg)
Web Services A web “costumava” ter foco em
pessoas A web está se tornando um plataforma
A2A (application-to-application) B2B é um caso especial
Web Services é a plataforma computacional distribuída sobre a qual aplicações A2A serão construídas
![Page 13: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/13.jpg)
Arquitetura Típica de uma Aplicação Web
Web Services
![Page 14: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/14.jpg)
Web Services
EnterpriseServices Gateway
Firewall
Devices
Web/ApplicationServer
EnterpriseLegacySystem
EnterpriseMessagingSystem
BusinessPartner Workflow/
BusinessProcesses
EnterpriseClient
as service
as service
as service
as service
as service
as service
as service
![Page 15: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/15.jpg)
Web Services
ServiceProvider
Services Broker
Services Gateway
WebServer
ApplicationServer
EnterpriseLegacySystem
EnterpriseMessagingSystem
Workflow/BusinessProcesses
ServiceRequester
Services Gateway
WebServer
ApplicationServer
EnterpriseLegacySystem
EnterpriseMessagingSystem
Workflow/BusinessProcesses
ServiceProvider
ServiceRequester
needwidget
providewidget
![Page 16: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/16.jpg)
Web Services pode ser visto como middleware ?
![Page 17: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/17.jpg)
Tecnologias Web Services Any technology-service paradigm Tipicamente
SOAP: transporte de dados (XML/HTTP)
WSDL: descrição dos serviços UDDI: registro e busca de serviços ebXML: framework para e-commerce WSFL: composição de Web Services
![Page 18: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/18.jpg)
SOAP Simple Object Access Protocol Modelo de mensagens independente do
protocolo de transporte suporte para HTTP
Modelo de codificação para tipos do sistema exemplo: XML para objetos Java, e vice-versa
RPC sobre HTTP
![Page 19: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/19.jpg)
WSDL Web Services Definition Language Provê descrição funcional de serviços
IDL description Protocol and deployment details
idealmente deveria provê todas as informações necessárias para acessar o serviço (programaticamente)
Machine-readable description
![Page 20: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/20.jpg)
UDDI Universal Description, Discovery
and Integration Coleção de diretórios (peers) que
contém informações sobre negócios e serviços
Conjunto de especificações baseadas em padrões para a descrição e pesquisa de serviços
![Page 21: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/21.jpg)
UDDI
![Page 22: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/22.jpg)
WSFL Web Services Flow Language Composição de Web Services
controle do fluxo de mensagens Construída sobre WSDL Modelos de utilização
Flow Model compõe serviços existentes em novos serviços,
definindo o workflow entre os serviços compostos Global Model
descreve a interação entre serviços sem definir a função (serviço) composto
![Page 23: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/23.jpg)
Web Services Papéis
Service provider Service broker Service requester
Operations Publish Find Bind
![Page 24: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/24.jpg)
Business Web Novo tipo de aplicação
![Page 25: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/25.jpg)
Business Web É um Web Services composto por
outros Web Services
![Page 26: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/26.jpg)
Business Web
![Page 27: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/27.jpg)
Que tipos de aplicações utilizarão Web Services?
![Page 28: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/28.jpg)
Web Services Benefícios
baixo acoplamento entre aplicações evolução independente de aplicações B2B a baixo custo (reuso) EAI (Enterprise Application Integration) não
intrusiva diversidade de componentes não afeta
interoperabilidade diversidade de linguagens não afeta
interoperabilidade padronização (futura)dos mecanismos de
interoperação
![Page 29: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/29.jpg)
Web Services em Java
![Page 30: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/30.jpg)
Web Services em Java Estende HTTP e Servlets/JSP para
suportar “program-to-program” ou “business-to-business”
(Re)utiliza a infra-estrutura J2EE
![Page 31: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/31.jpg)
WebServices Pack Empacotamento de todas as
tecnologias necessárias para o desenvolvimento de web services
WebService Pack
Java Server Faces
JAX Pack
JSP TagLibrary
Tomcat
![Page 32: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/32.jpg)
Web Services Companhias estão anunciando sua
estratégia para Web Services IBM, Sun, Oracle, HP, ... duas plataformas devem dominar o mercado: a
plataforma Java e .NET Novos servidores de aplicação já oferecem
soluções para o desenvolvimento de web services WebSphere 4.0 (IBM) WebLogic 6.1 (BEA) ...
![Page 33: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/33.jpg)
Web Services Considerações
operações precisam ser restringidas por mecanismos de segurança negociáveis
Encriptação, autenticação, autorização ... requer padrões bem definidos e
largamente adotados performance
Transformação XML <-> 0101010
![Page 34: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/34.jpg)
Web Services Conclusão
é uma forma nova de utilizar tecnologias e conceitos já existentes
viabilizada pelo contexto tecnológico e comercial atual
![Page 35: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/35.jpg)
CORBA e Web Services
![Page 36: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/36.jpg)
CORBA e Web ServicesCORBA e Web Services• Características benéficas a integração:
• Web Services:• Um middleware para middleware• Pode ser utilizado com um middleware existente (ex.
COM/DCOM, J2EE, CORBA)• CORBA:
• Uma arquitetura aberta composta de ~42 interfaces definidas para serviços horizontais e verticais
• Independência de protocolo de aplicação com a utilização de mapeamentos para GIOP
![Page 37: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/37.jpg)
CORBA e Web ServicesCORBA e Web Services• Possíveis cenários de integração:
• Implementando objetos CORBA utilizando Web Services;
• Implementando Web Services utilizando objetos CORBA;
• Expondo objetos CORBA como Web Services;
![Page 38: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/38.jpg)
CORBA e Web ServicesCORBA e Web Services• Implementado objetos CORBA usando
Web Services:
![Page 39: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/39.jpg)
CORBA e Web ServicesCORBA e Web Services• Implementado Web Services usando
objetos CORBA:
![Page 40: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/40.jpg)
CORBA e Web ServicesCORBA e Web Services• Expondo objetos CORBA como Web Services:
![Page 41: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/41.jpg)
CORBA e Web ServicesCORBA e Web Services
GIOP/IIOP SOAP/HTTPCodificação das mensagens
- CDR- Menor tamanho (sintaxe binária)
- XML- Maior legibilidade * (sintaxe texto)
Complexidade de empacotamento
- Simples/Média - Complicado- Devido ao uso de parsers XML
Suportado na Internet
- Tráfego não permitido na maioria dos firewalls
- Utiliza protocolos de aplicação conhecidos na Internet (ex. HTTP)
Interoperabilidade com middlewares existentes
- Utilizando outros mapeamentos (ex. DCE CIOP)- Utilizando bridges (ex. DCOM)
- Mapeamento mais simples- Ubiquitous industry support
• Comparação entre protocolos de transporte:
![Page 42: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/42.jpg)
SOAP
![Page 43: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/43.jpg)
SOAP – Simple Object SOAP – Simple Object Access ProtocolAccess Protocol
• Definição: É um protocolo que descreve
mensagens trocadas entre processos, chamadas remotas a métodos e padrões para transporte via HTTP.
Baseado em XML Se propõe a desempenhar o mesmo
papel do IIOP (padrão CORBA), ORPC (padrão DCOM) e JRMP(padrão Java RMI) para Sistemas Distribuídos na Internet.
![Page 44: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/44.jpg)
Para que mais um Para que mais um protocolo ?protocolo ?
• SOAP é baseado em texto (XML) enquanto os demais protocolos (IIOP,JRMP,ORPC) são binários Vantagens: facilidade de depuração e maior
adaptabilidade aos firewalls Desvantagem: tamanho da mensagem SOAP
é bem maior que os protocolos binários podendo gerar perda de performance
• Padrão aberto e independente de plataforma
![Page 45: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/45.jpg)
Arquitetura do SOAP• Um envelope que descreve o
conteúdo da mensagem e como processá-la
• Um conjunto de regras de codificação que descrevem como os tipos de dados definidos na aplicação são serializados
• Uma convenção para representar chamadas remotas a métodos (RPC) e suas respostas
![Page 46: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/46.jpg)
Exemplo de Mensagem SOAP
<SOAP-ENV:Envelopexmlns:SOAP-ENV=“http://schemas.xmlsoap.org/soap/envelope/”xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”xmlns:xsd=“http://www.w3.org/2001/XMLSchema”<SOAP-ENV:Header></SOAP-ENV:Header><SOAP-ENV:Body></SOAP-ENV:Body>
</SOAP-ENV:Envelope>
![Page 47: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/47.jpg)
Exemplo: SOAP Body<SOAP-ENV:Body>
<ns1:sayHelloToxmlns:ns1=“Hello”SOAP-ENV:encodingStyle=“http://
schemas.xmlsoap.org/soap/encoding/”><name
xsi:type=“xsd:string”>Maria</name></ns1:sayHelloTo>
<SOAP-ENV:Body>
![Page 48: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/48.jpg)
Implementando um Web Service SOAP
• A Especificação SOAP restringe-se aos detalhes da mensagem que é trocada entre os processos
• Não há qualquer padronização quanto às API’s para implementar Serviços ou clientes
• Existem uma série de ferramentas disponíveis: MS SOAP Toolkit, IBM WSTK, Apache-SOAP, GLUE, etc
![Page 49: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/49.jpg)
Pré-Requisitos• O requisito básico é possuir um
Servidor Web com suporte para servlets
• O Serviço pode ser implementado em diversas linguagens de programação e de script
• Tomando Java como exemplo, um serviço é uma classe Java comum sem qualquer alteração adicional
![Page 50: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/50.jpg)
Exemplo de Serviçopublic class HelloServer {
public String sayHelloTo(String nome){
return "Ola "+nome+", como vai ?";}public String sayHelloTo(Name nome) {
return "Ola "+nome.getName()+", como vai ?";
}}
![Page 51: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/51.jpg)
O Cliente• O mesmo serviço pode ser publicado
utilizando ferramentas de apoio diferentes sem sofrer qualquer alteração.
• O Cliente, entretanto, pode mudar bastante entre pacotes diferentes.
• A seguir será exemplificado um cliente para o serviço anterior usando o Apache-SOAP e outro utilizando o GLUE.
![Page 52: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/52.jpg)
Cliente Apache-SOAPCall call = new Call();call.setTargetObjectURI("urn:Hello");call.setMethodName("sayHelloTo");call.setEncodingStyleURI(Constants.NS_URI_SOA
P_ENC);Vector params = new Vector();params.addElement(new
Parameter("nome",String.class,nome,null));call.setParams(params);
![Page 53: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/53.jpg)
Cliente Apache-SOAPResponse resp = null;try { resp = call.invoke(url,""); }...Parameter ret = resp.getReturnValue();Object value = ret.getValue();System.out.println(value);
![Page 54: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/54.jpg)
Cliente GLUE IHelloServerService server =
HelloServerHelper.bind(); System.out.println(server.sayHelloTo(“Maria”));• A interface IHelloServerService pode ser gerada com
o utilitário wsdl2java fornecido junto com o pacote;• O mesmo utilitário gera também a classe
HelloServerHelper. • O GLUE exige que o Serviço publique a sua interface
WSDL para que o cliente utilize como base• Se o serviço for publicado utilizando o Servidor Web
do próprio GLUE, este gera o WSDL dinamicamente
![Page 55: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/55.jpg)
Tratamento de Exceções
• A Especificação SOAP prevê que os métodos remotos retornem Exceções para os clientes através do rótulo <Fault>
• Ou seja, qualquer exceção lançada pelo Serviço será convertida em uma seção <Fault> no envelope SOAP de resposta
![Page 56: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/56.jpg)
Tratamento de Exceções
• Da mesma forma que a API do cliente não é padronizada, a forma como as exceções serão capturadas e tratadas também não é estabelecida
• No Apache-SOAP, o Fault é extraído do objeto Response que é retornado
• No GLUE, deve ser capturada uma exceção WrappedException que contém uma SOAPException encapsulada contendo as informações do Fault
![Page 57: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/57.jpg)
WSDL
![Page 58: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/58.jpg)
WSDL – Web Services WSDL – Web Services Description LanguageDescription Language
• Definição: É a especificação publicada para um
diretório UDDI(Universal Description Discovery).
Tem uma interface e implementação de detalhes específicos dos serviços da Web disponíveis e dos respectivos proprietários
Baseada em XML, descreve a interface, protocolos, ligações, detalhes de visualização, tipos de dados e localização
![Page 59: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/59.jpg)
A Dupla SOAP e WSDLA Dupla SOAP e WSDL• O SOAP foi criado pela Microsoft/IBM• O WSDL foi criado para descrever os
contratos(interfaces) dos serviços WEB invocados através do SOAP
• Estes contratos de serviços indicam à aplicação que pretende chamar os serviços, quais são as suas interfaces, incluindo parâmetros de chamada e retorno
• Resolvem os problemas de interoperabilidade das plataformas, mas o aspecto dinâmico ainda não foi inteiramente solucionado
![Page 60: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/60.jpg)
IDL (Interface Definition Language)
• Definida juntamente com o CORBA 1.1 em 1991
• Descreve as interfaces que são chamadas pelos clientes e fornecidas pelas implementações
• O mapeamento IDL foi estabelecido primeiramente com a utilização da linguagem C++
![Page 61: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/61.jpg)
IDL X WSDL Padrão de
MapeamentoSIM NÃO
Protocolo de Mensagens
IIOP SOAP
Registro dos Serviços - UDDIFornece Localização (URL)
NÃO SIM
Complexidade de Programação
NÃO SIM
![Page 62: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/62.jpg)
Exemplo de IDL UMA INTERFACE SIMPLES CONTENDO UMA OPERAÇÃO:
Module Exmodule { structure ExStuct{ short structMember1; float structMember2; }; exception ExException{ string excepMember1; long excepMember2; }; interface Exinterface { string ExOp( in long inParam1, out float outParam2, inout Exstruct
inoutParam3)raises(ExException);
};}
![Page 63: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/63.jpg)
Mapeamento o Exemplo de IDL -> WSDL
<?xml version=”1.0” ?><wsdl:definitions
name=”ExInterfaceService” (1)targetNamespace =” http://example.com/Exmodule/ExInterface.wsdl”
xmlns:tns=”http://example.com/ExModule/ExInterface.wsdl” (2)xmlns:xds=”http://www.w3.org/2000/10/XMLSchema” (3)
xmlns:defs=”http://example.com/ExModule/definitions” (4)xmlns:soap=”http://schemas.xmlsoap.org/wsdl/soap” (5)xmlns:scoap=” http://schemas.omg.org/scoap/encoding” (6)xmlns:wsdl=”http://schemas.xmlsoap.org/wsdl/” (7)
<wsdl:importnamespace = “ http:// schemas.omg.org/scoap/encoding” (8)location=”http: //localhost/schemas/omg/scoap.xsd “ />
<wsdl:importnamespace = “ http:// example.com/ExModule/chemas” (9)location=”http: //localhost/schemas/ExModule/ExModule.xsd “ />
<wsdl:message name = “ ExException” (10)<wsdl:part name=”Exception” type=”defs:ExException” /></wsdl:message>
![Page 64: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/64.jpg)
Mapeamento IDL -> WSDL
<wsdl:message name = “ ExOpInput” (11)<wsdl:part name=”InParam1” type=”scoap:long” />
<wsdl:part name=”InoutParam3” type=”defs:ExStruct” /></wsdl:message>
<wsdl:message name = “ ExOpOutput” (12)<wsdl:part name=”_return” type=”scoap:string” />
<wsdl:part name=”OutParam2” type=”scoap:float” /><wsdl:part name=”InoutParam3” type=”defs:ExStruct” />
</wsdl:message><wsdl:message name = “ InterfaceType” (13)
<wsdl:part name=”RepID” type=”defs:ExInterfaceRepId” /></wsdl:message>
<wsdl:porttype name = “ ExInterface” (14)<wsdl:operationname=”ExOp” /> (15)
parameterOrder = “inParam1 outParam2 inoutParam3” ><wsdl:input message=”tns:ExOpInput” />
<wsdl:output message=”tns:ExOpOutput” /><wsdl:fault message=”tns:ExException” /></wsdl:operation>
</wsdl:portType>
![Page 65: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/65.jpg)
WSDL
![Page 66: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/66.jpg)
UDDI
![Page 67: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/67.jpg)
UDDI(Universal Description, Discovery and Integration) Permite informações sobre negócio e
serviços sejam eletronicamente publicadas e consultadas. “Register once, published everywhere”
Define como os negócios interagem sobre a internet e compartilham informações em uma arquitetura de registro global.
É um framework para integração de Web Services.
UDDI Project(www.uddi.org) participam a IBM, Microsoft e Ariba.
![Page 68: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/68.jpg)
UDDI(continuação) UDDI é uma especificação global. Toda
empresa espalhada pelo mundo é capaz de se registrar em um UDDI Business Registry.
Business Registry implementa a especificação UDDI.
Nos Registries ocorre uma sincronização de seus conteúdos regularmente.
Permissões de acesso – Somente o usuário com as credenciais que conferem com as credenciais usadas para criação dos registros.
![Page 69: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/69.jpg)
Benefícios imediatos de UDDI A capacidade de negócios rapidamente e
dinamicamente descobrir outros e interagir na internet.
Agregar valor aos serviços já fornecidos aos seus clientes.
Potencializar o crescimento do comércio B2B. Ressalva: A especificação UDDI ainda não foi
submetida a organizações de padronização. A versão utilizada pelos desenvolvedores é a 1.0(Draft).
![Page 70: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/70.jpg)
UDDI Informação fornecida a um registro
UDDI consiste de três componentes: White pages
Informações de contato da empresa. Yellow pages
Categorização dos serviços pela taxonomia padrão. Green pages
Informações técnicas sobre o serviço exposto(regras de negócio, descrição do serviço,...)
![Page 71: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/71.jpg)
UDDI Define quatro elementos básicos:
businessEntityPossui as descrições e informações técnicas
dos serviços. Cada businessEntity possui uma única chave que identifica o negócio/dado (Modela a informação de negócio).
businessServiceRepresenta os serviços ou processos de
negócio fornecidos pelo businessEntity (Definição de alto-nível dos serviços).
![Page 72: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/72.jpg)
UDDI(elementos)
bindingTemplate Apresenta os dados que descrevem as
características técnicas de uma dada implementação de serviço(Mapeamento entre businessService e tModel).
tModel Modela um tipo de tecnologia ou
serviço.
![Page 73: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/73.jpg)
UDDI(elementos)
![Page 74: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/74.jpg)
Implementações de UDDI jUDDI(“judy”)
Desenvolvida pela Bowstreet. Foi uma das primeiras
implementações de UDDI. Uddi4J
Desenvolvida pela IBM. Está presente IBM WSTK 2.1(Web
Service Toolkit).
![Page 75: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/75.jpg)
WSFL
![Page 76: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/76.jpg)
WSFL Web Service Flow Language
Definição Modelo de fluxo Modelo global
![Page 77: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/77.jpg)
Processo Negócio
![Page 78: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/78.jpg)
Modelo de Fluxo<flowModel name="bookTickets" serviceProviderType="airlineFlow">
<flowSource name="ticketFlowSource"> <output name="processInstanceData"
message="tio:receivedTicketOrder"/> </flowSource>
<serviceProvider name="agent" type="agentType"/> <serviceProvider name="traveler" type="travelerType"/>
<activity name="reserveSeats"> <input name="reserveSeatsInput" message="tio:receivedTicketOrder"/> <output name="reserveSeatsOutput" message="tio:reservation"/> <performedBy serviceProvider="local"/> <implement> <internal> <!-- .. call to credit card service .. --> </internal> </implement> </activity>
![Page 79: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/79.jpg)
Modelo Global<globalModel name="bookTripNTickets" serviceproviderType="agentType"> <serviceProvider name="travelAgent"
serviceProviderType="tio:agentType"> <export> <source portType="tio:tripHandler" operation="sendItinerary"/> <target portType="tio:tripNTicketHandler"
operation="sendItinerary"/> </export> <export> <source portType="tio:tripHandler" operation="receiveTripOrder"/> <target portType="tio:tripNTicketHandler"
operation="receiveTripOrder"/> </export> <locator type="static" service="abc:agent"/> <locator type="uddi" bindTime="startup" selectionPolicy="first"> <uddi-api:find_service businessKey="uuid_key" generic="1.0" xmlns:uddi-api="urn:uddi-org:api"> </uddi-api:find_service> </locator> </serviceProvider>
![Page 80: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/80.jpg)
ebXML
![Page 81: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/81.jpg)
ebXMLebXML• Definição:
Conjunto de especificações que juntas possibilitamum framework para comércio eletrônico.
• Objetivo:Prover uma infraestrutura aberta baseada emXML, possibilitando a prática global do comércioeletrônico de uma forma consistente, segura einteroperável por todas as partes.
![Page 82: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/82.jpg)
ebXMLebXML• A que se propõe:
Criar padrões para definir: Transações comuns de negócios Formatos comuns de troca de dados Um mecanismo que possibilite descrever o perfil
das companhias Um mecanismo que permita organizações
descobrirem outras companhias e ter acesso ao seu perfil
![Page 83: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/83.jpg)
ebXMLebXML Um mecanismo que permita duas organizações
estabelecerem acordos (contratos) antes de iniciarem as transações
Um mecanismo de transporte comum para a troca de mensagens entre as organizações
Um framework seguro e confiável
![Page 84: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/84.jpg)
ebXMLebXMLComponentesComponentes
• ebXML Registry and Repository Meio de compartilhar informação entre empresasRegistry: Serviço similar ao UDDIRepository: Armazena informações de
como a empresa trabalha:
processos, documentos e perfis de negócio
![Page 85: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/85.jpg)
ebXMLebXMLComponentesComponentes
• CPP (Collaboration Protocol Profile) Descreve o Web service (nome do serviço, parâmetros requeridos, forma de acessá-lo) Permite a empresa descrever o seu perfil
• CPA (Collaborative Partner Agreement) Acordo estabelecido entre duas organizções Baseado no CPP de ambas Adminstra as transações entre elas
![Page 86: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/86.jpg)
ebXMLebXMLComponentesComponentes
• ebXML Messaging Service Qualquer transporte pode ser usado Qualquer tipo de informação pode ser
roteada
![Page 87: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/87.jpg)
ebXMLebXML(Visão geral de um sistema
ebXML))• Fase de implementação
Durante essa fase a organização deve: Solicitar as especificações ebXML e entendê-las
Implementar um sistema ebXML
Publicar seu perfil (CPP) de negócio no repositório ebXML, permitindo que outras organizações o acesse.
![Page 88: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/88.jpg)
ebXMLebXML(Visão geral de um sistema
ebXML))• Fase de implementação
![Page 89: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/89.jpg)
ebXMLebXML(Visão geral de um sistema
ebXML))• Fase de negociação
Durante essa fase a organização deve: Recuperar do repositório ebXML o perfil de uma
organização com a qual ela pretende realizar negócios
Verificar se a organização provê os serviços que ela deseja
Enviar a organização um contrato (CPA)
![Page 90: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/90.jpg)
ebXMLebXML(Visão geral de um sistema
ebXML))• Fase de negociação
![Page 91: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/91.jpg)
ebXMLebXML(Visão geral de um sistema
ebXML))• Fase de transação
Depois que as duas organizações estiverem de acordo com o CPA as transações podem ser efetuadas. Essas transações consistem em mensagens ebXML, que são enviadas através do serviço de mensagens do padrão ebXML.
![Page 92: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/92.jpg)
ebXMLebXML(Visão geral de um sistema
ebXML))• Fase de transação
![Page 93: Web Services Equipe: Cláudia Brito Lyra Nunes da Silva Clindemberg Mendes Patrício Luiz Eugênio Fernandes Tenório Marcelo Faro do Amaral Lemos Marco Antônio](https://reader030.vdocuments.pub/reader030/viewer/2022012919/570638431a28abb8238f1e1f/html5/thumbnails/93.jpg)
ebXMLebXML(Visão geral de um sistema (Visão geral de um sistema
ebXML)ebXML)