![Page 1: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/1.jpg)
Desenvolvimento de Aplicações
Corporativas Avançadas
Web Services
![Page 2: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/2.jpg)
Agenda
Introdução
Web Service
Arquitetura
Soluções
Passos básicos
Implementando com Apache Axis
Novos protocolos
Conclusão
![Page 3: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/3.jpg)
O cenário de TI nas corporações
Novas tendências batiam à porta das corporações Migraram o foco do “gerenciamento de dados” para o
“gerenciamento dos processos e clientes”
Redesenho dos processos e implantação dos grandes sistemas de gestão empresarial (ERP)
Sucesso da Internet Disponibilizar parte das informações corporativas a
usuários ou sistemas que extrapolam as fronteiras corporativas
E-commerce
![Page 4: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/4.jpg)
Enterprise Application Integration
A diversidade de sistemas coexistindo nas
empresas é enorme
Grandes pacotes comerciais a aplicações
desenvolvidas sob-medida
Diferentes “software houses”
Diferentes tecnologias (host-centric, cliente-
servidor, n-tier, etc),
Diferentes plataformas (mainframes, Unix,
Windows, etc).
![Page 5: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/5.jpg)
Service Oriented Architecture (SOA)
SOA é uma arquitetura que representa
funcionalidades do software como
serviços
Já existiam tecnologias para SOA
Ex.: CORBA, RMI, etc...
Interoperabilidade é muito importante
Padronização
Fraco acoplamento
![Page 6: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/6.jpg)
Exemplo: Aplicação 3 camadas
Data Layer Presentation
Layer
Business
Layer
Aplicação Central Compras
boa arquitectura
DNA
Interface da aplicação
dá acesso aos dados
aplicacionais
![Page 7: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/7.jpg)
Service Oriented Architecture
Data Layer Presentation
Layer
Business
Layer
Serviço Central Compras
Service
Façade
UI
boa arquitectura
3-tier service
troca de mensagens
Dados e Lógica Negócio
encapsulados por uma
Web Service Façade
Interface desacoplado
da lógica de
processamento dos
dados
Web Service Standards
permitem ligações
cross-platform
![Page 8: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/8.jpg)
Automação de Processos de Negócio
Serviço Central Compras UI Processo Compras
Serviço RH
Serviços Contabilidade
Business
Process
Automation
Múltiplos serviços
combinados num único
processo de negócio
integração com diferentes
plataformas
![Page 9: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/9.jpg)
Web Services
![Page 10: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/10.jpg)
Visão Tecnológica
Web Services é uma tecnologia de chamada remota de objetos
Permite a infra-estrutura para criação de aplicações distribuídas (web ou não)
Permitem a criação de pequenos módulos de código reutilizáveis e disponibilizados para construção de aplicações “LEGO”
Utiliza protocolos Web como meio de transporte e comunicação
Alto grau de abstração em relação a linguagens de programação e plataformas de hardware / software
![Page 11: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/11.jpg)
Implementation
Data Business
Logic
Message
Description
Discovery
Transport
.NET/J2EE
Data Business
Logic
SOAP / XML
WSDL
UDDI
HTTP(S)
Arquitetura Web Service
UDDI (Universal Description,
Design, and Integration )
Provides a Directory of Services
on the Internet
WSDL (Web Services
Description Language)
Web Services are defined in terms
of the formats and ordering of
messages
SOAP (Simple Object Access
Protocol)
Web Services consumers can
send and receive messages using
XML
HTTP(S) and XML
Transport provided by open
Internet protocols
![Page 12: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/12.jpg)
Invocação de Web Services
Web Server (e.g. Apache Tomcat)
Web Service Toolkit (e.g. Apache Axis)
Client (e.g. CalcClient.java)
SOAP Binding
SOAP Request
Web Service
Code (e.g. Calculator.java)
Java to SOAP
Java
Java SOAP to Java
<soap:Envelope
<soap:Body>
<add>
<i1>10</i1>
<i2>5</i2>
</add>
</soap:Body>
</soap:Envelope>
calculator.add(10, 5)
add(10, 5)
![Page 13: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/13.jpg)
Vantagens
Padrão adotado pelo W3C e pela indústria.
Atravessa firewalls, roteadores e servidores de proxy.
Abordagem simples e fácil de distribuição e de interoperabilidade.
Consórcio WS-I- www.ws-i.org Garantir a interoperabilidade
Padrões abertos
Independente de plataforma
![Page 14: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/14.jpg)
170+ fabricantes software envolvidos
Interoperabilidade entre plataformas,
aplicações e linguagens
Maior evidência de que a indústria está
alinhada com os web services
www.ws-i.org
![Page 15: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/15.jpg)
![Page 16: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/16.jpg)
WebServices
Para resumirmos, apresento uma série de
questões sobre WebServices:
![Page 17: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/17.jpg)
O que é Serviço Web?
Um Serviço Web é a lógica de uma
aplicação, disponível programaticamente
e acessível sobre a Internet/Web, através
da padronização de XML e construída
sobre protocolos padronizados XML.
![Page 18: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/18.jpg)
Acesso de informação é através de um browser.
Aplicações Web tradicionais não expõem a
lógica da aplicação.
Web Service é disponível para uma variedade
de clientes (independência de plataforma).
Torna a construção de aplicações distribuídas
na Web menos difíceis.
O que é Web Service ?
![Page 19: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/19.jpg)
Questões Comuns
Como descrever um serviço Web ?
- Que protocolos ele suporta ?
XML-RPC, HTTP+SOAP-XML
- Que tipos de dados ele usa ?
Schemas XML
Como publicar a localização de um
Serviço Web ?
![Page 20: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/20.jpg)
Questões sobre o uso de
Web Services
Relacionadas à aplicação de
Web Services
![Page 21: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/21.jpg)
Qual o uso de Web Services?
Para conectividade de aplicação para aplicação.
Para habilitar aplicações existentes à Web.
Para construir aplicações npovas aplicações.
Para interoperar através de plataformas heterogêneas.
![Page 22: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/22.jpg)
Qual protocolo utilizar?
XML-RPC
SOAP
![Page 23: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/23.jpg)
Qual dos benefícios de Web Services é
mais atrativo para voçê?
Provê um modo de reutilizar aplicações existentes.
Provê um modo de usar padrões abertos.
Provê um modo de interoperar através de plataformas (OS) distintos.
![Page 24: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/24.jpg)
Qual dos benefícios de Web Services é
mais atrativo para voçê?
Provê um modo de construir aplicações
dinâmicas.
Torna o processo de desenvolvimento
mais rápido.
Simplifica o processo de aplicação.
![Page 25: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/25.jpg)
Quais tecnologias se pode usar?
SOAP (Simple Object Application Protocol)
SCL (SOAP Contract Language)
UDDI (Universal Description, Discovery, and Integration) http://www.uddi.org/
WSDL (Web services Description Language)
![Page 26: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/26.jpg)
Quais tecnologias se pode usar?
LDAP (Lightweight Directory Access Protocol)
WSFL (Web Services Flow Language)
BPEL ( Business Process Execution Language)
![Page 27: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/27.jpg)
Quais tecnologias se pode usar?
ebXML (Electronic Business using
eXtensible Markup Language)
SOA (Service Oriented Architecture)
![Page 28: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/28.jpg)
Quais linguagens se pode usar?
Java tools
C or C++ tools
C# tools
VB tools
![Page 29: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/29.jpg)
Quais linguagens se pode usar ?
COBOL or PL1
Scripting language
HTML or XML
outras
![Page 30: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/30.jpg)
Quais plataformas se pode usar ?
Windows Server
Windows 10
Solaris
Linux
HP-UNIX
![Page 31: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/31.jpg)
Quais plataformas se pode usar ?
WebSphere AS
BEA
Sun
Oracle
J2EE
![Page 32: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/32.jpg)
Quais plataformas se pode usar ?
Unix-like
Novell NetWare
OS390
Netware
Mac OS
![Page 33: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/33.jpg)
Quais plataformas se pode usar ?
IBM AIX
IBM i-series
Outra
![Page 34: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/34.jpg)
Quais ferramentas de Web Services podem ser
usadas ?
Apache Project SOAP - AXIS
Module BEA WebLogic Workshop
Borland JBuilder
Cape Clear Studio
HP NetAction toolkit
IBM WebSphere SDK for Web Services
IBM WebSphere Studio Application Developer
Open Source
![Page 35: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/35.jpg)
Quais ferramentas de Web Services podem ser
usadas?
IBM WebSphere Studio Site Developer
IBM WebSphere Studio Integration Edition
IBM ETTK
Microsoft .NET
Microsoft .NET SDK
Oracle .NOW Dynamic Web Services
Sun Studio ONE
Sun Java Web Services Development Pack
Systinet Developer
The Mind Electric Glue
![Page 36: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/36.jpg)
O que você prefere ?
Qual das ferramentas apresentadas
você escolheria para desenvolver
aplicações habilitadas à Web Services?
![Page 37: Web Services · Arquitetura Web Service UDDI (Universal Description, Design, and Integration) Provides a Directory of Services on the Internet WSDL (Web Services Description Language)](https://reader033.vdocuments.pub/reader033/viewer/2022052721/5f0a99687e708231d42c6c9b/html5/thumbnails/37.jpg)
Fontes de consulta
http://java.sun.com/webservices
developers.ibm.com/webservices
JavaWorld: www.javaworld.com
webservices.org
www.uddi.org
xml.apache.org
http://www.tusc.com.au/tutorial/html/chap9.html