1 Web Services José Gustavo Quadro Julho de 2005.
-
Upload
yasmin-portanova -
Category
Documents
-
view
214 -
download
0
Transcript of 1 Web Services José Gustavo Quadro Julho de 2005.
1
Web Services
José Gustavo QuadroJulho de 2005
2
ObjetivosInvestigar as especificaçõesExplorar as tecnologias de Web
Services disponíveisCaracterizar algumas
implementações
3
MetodologiaFundamentação nas especificações
JCPEscolha de implementaçõesInvestigação de características
principais
4
EspecificaçõesJSR 101:
JAX-RPCJSR 109:
Empacotamento Instalação Execução (de componentes)
5
JSR 101A implementação é o JAX-RPC3 tipos de clientes:
stub estático stub dinâmico (dynamic proxy) DII (dynamic invocation interface)
invocação dinâmicageração automática e sob demanda
6
JSR 109 (1/3)Define o processo de instalação
(deploy) no servidor J2EEDefinição dos tipos de servidores
Bean sem estado (contêiner EJB) Classe Java (contêiner Web)
7
JSR 109 (2/3)Modelo de programação
Como é definido o servidor para ser acessível via Web Service
Como o cliente utiliza JAX-RPC para chamarEmpacotamentoInstalação
Como descrever o servidor como um Web Service
Como descrever o cliente para usar JAX-RPC
8
JSR 109 (3/3)Clientes são os mesmos da JSR 101109 > 101Só uma formalização do que já havia
sido implementado
9
Web Services - JSR 101 (1/2)
10
Web Services - JSR 101 (2/2)
11
Web Services - características 1. Implementação mantida no servidor,
na rede 2. Padrão para troca de dados e
chamadas 3. Padrão de descrição de serviço 4. Padrão para segurança 5. Padrão para descoberta e registro de
serviços
12
Web Service - funcionamento O que normalmente ocorre:
13
Web Service - funcionamento
14
Web Services - Siglas SOAP, WSDL, UDDI JAXR=UDDI+ebXML
15
Implementações3 Produtos analisadosBEA WebLogic - versão 8.1Oracle OC4J - versão 10gIBM WebSphere - versão 5.2
16
BEA WebLogic (1/8)SOAP 1.1, 1.2, with Attachments (SAAJ)
XML PayloadWSDL 1.1JAX-RPC 1.0WS-SecurityUDDI 2.0XML Schema
17
BEA WebLogic (2/8)Segurança em 3 níveis
1. Nível de mensagem: criptografia 2. Nível de protocolo: SSL
JMS não suporta segurança 3. Nível de usuário:
usuáriogrupooperaçãoroles
18
BEA WebLogic (3/8)Confiabilidade
na troca de mensagens assíncronas utilizado em JMS 2 estados possíveis mensagem enviada mensagem não enviada transação no servidor
19
BEA WebLogic (4/8)Suporta UDDISuporta SAAJSuporta SOAP 1.2Suporta JMS sobre TCP/IP
20
BEA WebLogic (5/8)Geração automática:
stubs para chamadas assíncronas (2 métodos)
clientes web, J2SE, J2ME exposição da fachada de sessão
21
BEA WebLogic (6/8)Implementação no servidor:
Stateless session bean Java class Message-driven bean
Suporta chamadas síncronas e assíncronas
Suporta RPC- e Document-oriented WS
22
BEA WebLogic (7/8)Message-Driven Bean, JMS
23
BEA WebLogic (8/8) Dados:
Padrão: JAX-RPCNão-padrão: autotypeNão-padrão: XML Schema
Manipuladores, cabeçalho SOAP(criptografia)
Simulação WS Statefull: Entity Bean, JDBC, id
Cache
24
Oracle OC4J (1/8)SOAP 1.1
RPC-oriented Document-oriented
WSDL 1.1UDDI 2.0
25
Oracle OC4J (2/8)Implementação do servidor
Classe Java Stateless, StatefullRPC e Document
Stateless Session Bean Message-Driven Bean (JMS) PL/SQL, JPublisher
26
Oracle OC4J (2/8)Ferramenta de apoioEnterprise ManagerRealiza monitoraçãoFaz manutençãoControla o UDDI
27
Oracle OC4J (3/8)Stubs Java top-down
a partir do WSDL Contraste bottom-up, aplicações legadas
Exposição de métodos de componentes J2EE
Exposição de procedures e functions PL/SQL
28
Oracle OC4J (4/8)SegurançaHerdada do J2EESingle Sign-On
29
Oracle OC4J (5/8)WS orientado a RPC
Classes Java - servidor Web Stateless Session Beans PL/SQL
WS orientado a Documento Classes Java JMS
PL/SQL Statefull = Classe Java->PL/SQL
30
Oracle OC4J (6/8)
ServletEspecialização
31
Oracle OC4J (7/8)Limite de tipos de dadosJAX-RPC não suportadoSuporte a primitivos e alguns outrosPara WS orientados a Documento:
org.w3c.dom.Element é o único aceitoSuporte a outras bases de dados
usando o UDDI Registry SQL Server, DB2, Sybase - procedures
32
Oracle OC4J (8/8)Oracle Web Services Manager, GatewaySegurança XML/HTTP -> JMS
33
IBM WebSphere(1/7)SOAP sobre HTTPSOAP sobre JMSJAX-RPCWS-Interoperability Basic Profile (WS-
I) entre WS independência de “bandeira”
34
IBM WebSphere(2/7)IBM SOAP4J
Doação para Apache Virou Apache SOAP Outros servidores de aplicação o usam
WebSphere SOAP Engine - Apache Axis desempenho, pesquisa, alphaWorks
SOAP 1.0, mas provavelmente 2.0...
35
IBM WebSphere(3/7)UDDI 2.0WSIF - Web Services Invocation
Framework abstração do protocolo stub-less
Suporte a SAAJ - with Attachments
36
IBM WebSphere(4/7)WSIL - Web Services Inspection
Language UDDI x WSIL busca de WS distribuída WSDL não-centralizado sem nível de indireção mais baixo nível maior performance
37
IBM WebSphere(5/7)BPEL4WS - Business Process
Execution Language for WS integrar WS em aplicações de workflow etapas de um processo envolvem WS
diferentes
38
IBM WebSphere(6/7)WSGW - Web Services Gateway
monitoração gerenciamento segurança XML/HTTP -> JMS
DADX - Document Access Definition Extension integração com procedures do DB2
39
IBM WebSphere(7/7)Criação de Web Services top-down
geração de stubs a partir do WSDL
40
Muito Obrigado!