SlideShare uma empresa Scribd logo
Web Services
 Prof. MSc. Edson Yanaga
 http://www.yanaga.com.br
Edson Yanaga

• Sócio-presidente da Ínsula TI
• Bacharel em Ciência da Computação - UEM
• Mestre em Engenharia Elétrica e Informática
  Industrial - UTFPR
• Arquiteto Java e consultor com 13 anos de
  experiência em Tecnologia Java
• Administrador de sistemas Unix (Solaris,
  HP-UX e Linux) com 10 anos de experiência
Edson Yanaga

• Certified ScrumMaster
• Sun Certified Enterprise Architect for the Java
  Platform, Enterprise Edition 5 (i)
• Sun Certified Developer for Java Web Services 5
• Sun Certified Specialist for NetBeans IDE
• Sun Certified Web Component Developer for J2EE
  1.4
• Sun Certified Programmer for Java 2 Platform 1.4
Web Services

• Permitem que você disponibilize a sua
  aplicação através da Web
• Aplicação Web = Aplicação com as
  restrições adicionais da Web
• Dois tipos de Web Services:
 ➡ SOAP

 ➡ REST
Cliente   Servidor
Cliente   Servidor
GET /index.html?param1=a&param2=b
      HTTP/1.0




Cliente                                   Servidor
GET /index.html?param1=a&param2=b
      HTTP/1.0




Cliente                                   Servidor
POST /postServlet
      HTTP/1.0
      User-Agent: Mozilla/1.0
      Content-Type: application/x-www-form-urlencoded
      Content-Length: 14

      param1=a
      param2=b



Cliente                                            Servidor
PUT /postServlet
      HTTP/1.0
      User-Agent: Mozilla/1.0
      Content-Type: application/x-www-form-urlencoded
      Content-Length: 14

      param1=a
      param2=b



Cliente                                            Servidor
DELETE /postServlet
      HTTP/1.0
      User-Agent: Mozilla/1.0
      Content-Type: application/x-www-form-urlencoded
      Content-Length: 14

      param1=a
      param2=b



Cliente                                            Servidor
Cliente   Servidor
Cliente   Servidor
Cliente   Servidor
Cliente   Servidor
Cliente   Servidor
HTTP/1.0 200 OK
  Date: Tue, 01 Dec 2001 23:59:59 GMT
  Content-Type: text/html
  Content-Length: 52

  <html>
  <body>
  <h1>Hello World!</h1>
  </body>
  </html>

Cliente                                 Servidor
Cliente   Servidor
Cliente   Servidor
Cliente   Servidor
SOAP

• Simple Object Access Protocol
• Evolução das chamadas de
  procedimentos remotas de sistemas
  distribuídos
• RPC, RMI, CORBA e SOAP
• É uma invocação de método remota
  utilizando XML e HTTP
WSDL

• Web Service Definition Language
• PortType ou Interface definem a
  interface e os métodos disponibilizados
  pelo Web Service
• Através de um Binding, você instancia
  um serviço concreto num Port ou
  Endpoint
JAX-WS
Java API for XML Web Services


            wsgen
          wsimport


No JavaEE 6: auto-configuração e
         Annotations
REST



• REpresentational State Transfer
• Definido por Roy Fielding em 2000
 ➡ Um dos autores do HTTP 1.0 e 1.1
Restrições do REST

• Cliente/Servidor
• Stateless
• Cacheable
• Arquitetura em camadas
• Código sob demanda
• Interface Uniforme (URIs)
Métodos HTTP e RESt

                                     GET        POST      PUT     DELETE


                                                         Altera o
                                               Cria uma           Remove
                                    Lista as            conjunto
 http:/www.yanaga.com.br/aluno/                  nova              todo o
                                     URIs                  das
                                               entidade           conjunto
                                                        entidades
                                     Obtém Cria uma
                                                      Altera a Remove a
http:/www.yanaga.com.br/aluno/123     uma      nova
                                                      entidade entidade
                                    entidade entidade
JAX-RS




Java API for RESTful Web Services

Mais conteúdo relacionado

PDF
JBUG Brasil - Desvendando as features do WildFly.
Eduardo Medeiros
 
PPT
Zk Framework
thiagoprocaci
 
PPTX
5 técnicas para acelerar o desenvolvimento e reduzir Bugs em aplicações WEB
Rafael Chinelato Del Nero
 
PDF
Jboss7
rtaniguchi
 
PPTX
Introdução - Java WEB
CodesHouse Treinamentos
 
PDF
Apresentação hotspot
Lincolm Aguiar
 
KEY
Quick intro to Apache Maven
InformantTalks
 
ODP
JUDCon Brazil 2013
George Gastaldi
 
JBUG Brasil - Desvendando as features do WildFly.
Eduardo Medeiros
 
Zk Framework
thiagoprocaci
 
5 técnicas para acelerar o desenvolvimento e reduzir Bugs em aplicações WEB
Rafael Chinelato Del Nero
 
Jboss7
rtaniguchi
 
Introdução - Java WEB
CodesHouse Treinamentos
 
Apresentação hotspot
Lincolm Aguiar
 
Quick intro to Apache Maven
InformantTalks
 
JUDCon Brazil 2013
George Gastaldi
 

Mais procurados (11)

PPTX
Interagindo com web services RPC, SOAP e REST utilizando PHP
Eduardo Cesar
 
ODP
O Elefante e a Mula
Taffarel De Lima Oliveira
 
PPT
Servidores WEB
Mayron Cachina
 
PPT
VIII TechTalk - Spring 3
Diego Magalhães
 
PPT
Web Sphere
Fabricio Carvalho
 
PPTX
Rest workshop
Diogo Gomes
 
PDF
Spring boot
Bruno Coan
 
PDF
Técnicas de Programação para a Web
Luiz Cláudio Silva
 
PDF
APIs REST com Spring Boot
Wesley Fuchter
 
PDF
Workshop Ruby on Rails - Code Girl (Programar meu Futuro), por Gislene Pereir...
Thoughtworks
 
PDF
Vue.js - o framework progressivo
Vinicius Reis
 
Interagindo com web services RPC, SOAP e REST utilizando PHP
Eduardo Cesar
 
O Elefante e a Mula
Taffarel De Lima Oliveira
 
Servidores WEB
Mayron Cachina
 
VIII TechTalk - Spring 3
Diego Magalhães
 
Web Sphere
Fabricio Carvalho
 
Rest workshop
Diogo Gomes
 
Spring boot
Bruno Coan
 
Técnicas de Programação para a Web
Luiz Cláudio Silva
 
APIs REST com Spring Boot
Wesley Fuchter
 
Workshop Ruby on Rails - Code Girl (Programar meu Futuro), por Gislene Pereir...
Thoughtworks
 
Vue.js - o framework progressivo
Vinicius Reis
 
Anúncio

Semelhante a Web Services (20)

PDF
Rest Java One
Dextra
 
PDF
PHP RESTful Web Services
Felipe Ribeiro
 
PDF
REST com Python
fabiocerqueira
 
PDF
De Web Services RESTful a Aplicações Mashup
Wagner Roberto dos Santos
 
PDF
Novidades do JAX-RS 2.0
jesuinoPower
 
PDF
Aula-16-Semana-05-RESTFull-Services Aula.pdf
acessoneutro
 
PDF
Rest web services com Java
jesuinoPower
 
KEY
PHP RESTful Web Services - PHPConf'09
Felipe Ribeiro
 
PPTX
Conhecendo os recursos do ASP.NET Web API
Ivan Paulovich
 
KEY
Do Rest Ao Restfull - Rio Jug
Sergio Azevedo
 
PPTX
Web Services
Paulo Neto
 
PPT
Mac5700
jtrindadetifatec
 
PPTX
Palestra Sobre REST
Paulo José Almeida
 
PDF
REST Web Services com Java
JugVale
 
PPTX
XML Free Programming - Brazil
Stephen Chin
 
PPTX
Introdução ao ASP .NET Web API
Vinicius Mussak
 
PPTX
Criando aplicativos para Windows 8 usando apenas HTML5 e Javascript
Ivan Paulovich
 
PDF
Web service
Junior Moraes
 
PDF
Rest Teoria E Pratica
Sergio Azevedo
 
PDF
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...
Tchelinux
 
Rest Java One
Dextra
 
PHP RESTful Web Services
Felipe Ribeiro
 
REST com Python
fabiocerqueira
 
De Web Services RESTful a Aplicações Mashup
Wagner Roberto dos Santos
 
Novidades do JAX-RS 2.0
jesuinoPower
 
Aula-16-Semana-05-RESTFull-Services Aula.pdf
acessoneutro
 
Rest web services com Java
jesuinoPower
 
PHP RESTful Web Services - PHPConf'09
Felipe Ribeiro
 
Conhecendo os recursos do ASP.NET Web API
Ivan Paulovich
 
Do Rest Ao Restfull - Rio Jug
Sergio Azevedo
 
Web Services
Paulo Neto
 
Palestra Sobre REST
Paulo José Almeida
 
REST Web Services com Java
JugVale
 
XML Free Programming - Brazil
Stephen Chin
 
Introdução ao ASP .NET Web API
Vinicius Mussak
 
Criando aplicativos para Windows 8 usando apenas HTML5 e Javascript
Ivan Paulovich
 
Web service
Junior Moraes
 
Rest Teoria E Pratica
Sergio Azevedo
 
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...
Tchelinux
 
Anúncio

Mais de Edson Yanaga (6)

PDF
Java Craftsmanship: Lessons Learned on How to Produce Truly Beautiful Java Code
Edson Yanaga
 
PDF
Enterprise Integration Patterns na nuvem com Spring Integration
Edson Yanaga
 
PDF
Certificação Java
Edson Yanaga
 
PDF
Artesanato de software
Edson Yanaga
 
PDF
Architecting cloud-enabled applications using Spring-Integration 2.x
Edson Yanaga
 
PDF
Cloud computing
Edson Yanaga
 
Java Craftsmanship: Lessons Learned on How to Produce Truly Beautiful Java Code
Edson Yanaga
 
Enterprise Integration Patterns na nuvem com Spring Integration
Edson Yanaga
 
Certificação Java
Edson Yanaga
 
Artesanato de software
Edson Yanaga
 
Architecting cloud-enabled applications using Spring-Integration 2.x
Edson Yanaga
 
Cloud computing
Edson Yanaga
 

Último (16)

PPTX
Curso de Java 2 - (PrimeiroPrograma, Variáveis, Tipos e Operadores.pptx
Anderson Maciel
 
PPTX
22 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
PPTX
Curso de Java 7 - (ArrayList, Collections,(Set, List, Queue, Map)).pptx
Anderson Maciel
 
PPTX
Gestão de Mudanças - Os maiores desafios da Gestão de Mudanças e Gestão de Pr...
Gateware Group
 
PPTX
Desenvolvimento-de-Produtos-Inovadores.pptx
ssuser1d7565
 
PPTX
Curso de Java 6 - (Números, Data e Hora).pptx
Anderson Maciel
 
PDF
Certificado em Redes Neurais Artificiais em Python
CaioSilva506151
 
PPTX
Gestão de Mudanças - Fases do processo de mudança organizacional
Gateware Group
 
PPTX
Curso de Java 5 - (Strings) Tipo de Dados.pptx
Anderson Maciel
 
PPTX
21 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
PPTX
Curso de Java 1 - (Introdução Geral).pptx
Anderson Maciel
 
PPTX
Computacao-e-Tecnologias-Digitais-Por-Que-Aprender.pptx
RobertaOliveiradaFon1
 
PPTX
Curso de Java 4 - (Orientação a Objetos).pptx
Anderson Maciel
 
PDF
Explorando o Futuro do Corpo: Implantes Neurais e o Biohacking dos Sentidos
cooperliora
 
PPTX
Curso de Java 3 - (Estruturas de Controle, Decisão, Loop, Procedimento).pptx
Anderson Maciel
 
PPTX
aplicativopenseira.pptx Aplicativo que organiza Pensamentos - Peça Publicitária
StelaNorie1
 
Curso de Java 2 - (PrimeiroPrograma, Variáveis, Tipos e Operadores.pptx
Anderson Maciel
 
22 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
Curso de Java 7 - (ArrayList, Collections,(Set, List, Queue, Map)).pptx
Anderson Maciel
 
Gestão de Mudanças - Os maiores desafios da Gestão de Mudanças e Gestão de Pr...
Gateware Group
 
Desenvolvimento-de-Produtos-Inovadores.pptx
ssuser1d7565
 
Curso de Java 6 - (Números, Data e Hora).pptx
Anderson Maciel
 
Certificado em Redes Neurais Artificiais em Python
CaioSilva506151
 
Gestão de Mudanças - Fases do processo de mudança organizacional
Gateware Group
 
Curso de Java 5 - (Strings) Tipo de Dados.pptx
Anderson Maciel
 
21 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
Curso de Java 1 - (Introdução Geral).pptx
Anderson Maciel
 
Computacao-e-Tecnologias-Digitais-Por-Que-Aprender.pptx
RobertaOliveiradaFon1
 
Curso de Java 4 - (Orientação a Objetos).pptx
Anderson Maciel
 
Explorando o Futuro do Corpo: Implantes Neurais e o Biohacking dos Sentidos
cooperliora
 
Curso de Java 3 - (Estruturas de Controle, Decisão, Loop, Procedimento).pptx
Anderson Maciel
 
aplicativopenseira.pptx Aplicativo que organiza Pensamentos - Peça Publicitária
StelaNorie1
 

Web Services

  • 1. Web Services Prof. MSc. Edson Yanaga http://www.yanaga.com.br
  • 2. Edson Yanaga • Sócio-presidente da Ínsula TI • Bacharel em Ciência da Computação - UEM • Mestre em Engenharia Elétrica e Informática Industrial - UTFPR • Arquiteto Java e consultor com 13 anos de experiência em Tecnologia Java • Administrador de sistemas Unix (Solaris, HP-UX e Linux) com 10 anos de experiência
  • 3. Edson Yanaga • Certified ScrumMaster • Sun Certified Enterprise Architect for the Java Platform, Enterprise Edition 5 (i) • Sun Certified Developer for Java Web Services 5 • Sun Certified Specialist for NetBeans IDE • Sun Certified Web Component Developer for J2EE 1.4 • Sun Certified Programmer for Java 2 Platform 1.4
  • 4. Web Services • Permitem que você disponibilize a sua aplicação através da Web • Aplicação Web = Aplicação com as restrições adicionais da Web • Dois tipos de Web Services: ➡ SOAP ➡ REST
  • 5. Cliente Servidor
  • 6. Cliente Servidor
  • 7. GET /index.html?param1=a&param2=b HTTP/1.0 Cliente Servidor
  • 8. GET /index.html?param1=a&param2=b HTTP/1.0 Cliente Servidor
  • 9. POST /postServlet HTTP/1.0 User-Agent: Mozilla/1.0 Content-Type: application/x-www-form-urlencoded Content-Length: 14 param1=a param2=b Cliente Servidor
  • 10. PUT /postServlet HTTP/1.0 User-Agent: Mozilla/1.0 Content-Type: application/x-www-form-urlencoded Content-Length: 14 param1=a param2=b Cliente Servidor
  • 11. DELETE /postServlet HTTP/1.0 User-Agent: Mozilla/1.0 Content-Type: application/x-www-form-urlencoded Content-Length: 14 param1=a param2=b Cliente Servidor
  • 12. Cliente Servidor
  • 13. Cliente Servidor
  • 14. Cliente Servidor
  • 15. Cliente Servidor
  • 16. Cliente Servidor
  • 17. HTTP/1.0 200 OK Date: Tue, 01 Dec 2001 23:59:59 GMT Content-Type: text/html Content-Length: 52 <html> <body> <h1>Hello World!</h1> </body> </html> Cliente Servidor
  • 18. Cliente Servidor
  • 19. Cliente Servidor
  • 20. Cliente Servidor
  • 21. SOAP • Simple Object Access Protocol • Evolução das chamadas de procedimentos remotas de sistemas distribuídos • RPC, RMI, CORBA e SOAP • É uma invocação de método remota utilizando XML e HTTP
  • 22. WSDL • Web Service Definition Language • PortType ou Interface definem a interface e os métodos disponibilizados pelo Web Service • Através de um Binding, você instancia um serviço concreto num Port ou Endpoint
  • 23. JAX-WS Java API for XML Web Services wsgen wsimport No JavaEE 6: auto-configuração e Annotations
  • 24. REST • REpresentational State Transfer • Definido por Roy Fielding em 2000 ➡ Um dos autores do HTTP 1.0 e 1.1
  • 25. Restrições do REST • Cliente/Servidor • Stateless • Cacheable • Arquitetura em camadas • Código sob demanda • Interface Uniforme (URIs)
  • 26. Métodos HTTP e RESt GET POST PUT DELETE Altera o Cria uma Remove Lista as conjunto http:/www.yanaga.com.br/aluno/ nova todo o URIs das entidade conjunto entidades Obtém Cria uma Altera a Remove a http:/www.yanaga.com.br/aluno/123 uma nova entidade entidade entidade entidade
  • 27. JAX-RS Java API for RESTful Web Services