Web services
Francisco Carlos Moraes Junior
Marcos Filipe Lino
Definição
A definição de Web Services de acordo com a W3C diz que é um sistema de
software responsável por proporcionar a ...
Outras soluções:
● DCOM (Distributed Component Object Model)
● CORBA
● JAVA RMI
● Problemas de interoperabilidade
● Orient...
Porque webservices?
Reduzir complexidade de integração
O desenvolvimento de aplicações em ambientes corporativos ganhou,
com o tempo, proporçõ...
Características
● Expõe funcionalidades de programação na web
● São acedidos usando protocolos standard HTTP
● Comunicam p...
Arquitetura de um web service SOA
Uma definição técnica de web services SOA poderia ser como um serviço disponibilizado na...
SOAP
SOAP (Simple Object Access Protocol) é um protocolo para troca de
informações em ambiente distribuído. É baseado em d...
De acordo com o W3Schools, a estrutura da mensagem SOAP é definida em um documento XML que
contém os seguintes elementos:
...
WSDL
WSDL (Web Services Description Language) é a linguagem de descrição de
web services baseada em XML. Ela permite, atra...
WSDL
Message : define a part de cada mensagem associada a um tipo
PortType : define “glossaryTerms” como um porta e <opera...
UDDI
UDDI (Universal Description, Discovery and Integration) é um serviço de
diretório onde empresas podem registrar (publ...
Vantagens do SOAP
● Pode atravessar firewalls com facilidade.
● Os dados do SOAP são estruturados usando XML. Portanto, as...
Desvantagens do SOAP
● Pode ser usado tanto de forma anônima como com autenticação
(nome/senha).
● Mecanismos de Segurança...
Ligação SOAP + HTTP
Requisição HTTP
POST /item HTTP/1.1
Host: 189.123.345.239
Content-Type: text/plain
Content-Length: 200...
Rest
REST: significa (Representational State
Transfer) é um estilo de desenvolvimento de
web services que teve origem na t...
Caracteristicas
● Uso adequado dos métodos HTTP.
● Uso adequado de URL’s
● Uso adequado de cabeçalho HTTP
● Interligação e...
Recursos
O “marco zero” de REST é o recurso. Em REST, tudo é
definido em termos de recursos, sendo estes os conjuntos
de d...
Exemplo Request
Request: http://localhost:8080/cervejaria/clientes
• http:// - Indica o protocolo que está sendo utilizado...
Exemplo Response
Exemplo de retorno:
<clientes>
<cliente id="1">
<nome>Alexandre</nome>
<dataNascimento>2012-12-01</dataNa...
Exemplo Response
Se você desejar, portanto, retornar um cliente específico, você deve utilizar
uma URL diferente. Suponha,...
HTTP métodos
Cada método possui particularidades e aplicações de acordo com a necessidade. Estas
particularidades são defi...
Exemplo de código webservice rest
Aplicação sobre bandas musicais.
SOAP VS REST
SOAP:
● independência de transporte (SMTP, HTTP, UDP)
● Segurança
● Machine-readable
● Maior flexibilidade
● ...
SOAP VS REST
● Mensagens menores
● Simplicidade.
● Explora melhor com o HTTP.
● A comunicação não é restrita a xml.
Referencias
[1]G. Alonso, F. Casati, H. Kuno, V. Machiraju. Web Services: Concepts,
Architecture and Applications. Springe...
Próximos SlideShares
Carregando em…5
×

Web service

272 visualizações

Publicada em

Web Services

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
272
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
2
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Web service

  1. 1. Web services Francisco Carlos Moraes Junior Marcos Filipe Lino
  2. 2. Definição A definição de Web Services de acordo com a W3C diz que é um sistema de software responsável por proporcionar a interação entre duas máquinas através de uma rede.
  3. 3. Outras soluções: ● DCOM (Distributed Component Object Model) ● CORBA ● JAVA RMI ● Problemas de interoperabilidade ● Orientados a ligação ● Dependentes de plataforma
  4. 4. Porque webservices?
  5. 5. Reduzir complexidade de integração O desenvolvimento de aplicações em ambientes corporativos ganhou, com o tempo, proporções que não poderiam ser previstas a curto prazo. Esse crescimento desordenado criou uma espécie de “colcha de retalhos” onde cada componente é desenvolvido para ligar 2 pontos específicos e possuem alto acoplamento dentro do sistema fazendo com que haja uma grande redundância de funcionalidades.
  6. 6. Características ● Expõe funcionalidades de programação na web ● São acedidos usando protocolos standard HTTP ● Comunicam por meio de mensagens ● Usam XML para codificar mensagens ● Estrutura as mensagens usando o protocolo SOAP ● São auto-descritivos permitindo a um cliente facilmente comunicar com os serviço - WSDL ● São serviços que podem ser registrados e facilmente descobertos
  7. 7. Arquitetura de um web service SOA Uma definição técnica de web services SOA poderia ser como um serviço disponibilizado na Internet, descrito via WSDL, registrado via UDDI, acessado utilizando SOAP e com os dados transmitidos sendo representados em XML.
  8. 8. SOAP SOAP (Simple Object Access Protocol) é um protocolo para troca de informações em ambiente distribuído. É baseado em definições XML e utilizado para acessar web services. Esse protocolo encapsula as chamadas e retornos aos métodos dos web services, sendo utilizado, principalmente, sobre HTTP.
  9. 9. De acordo com o W3Schools, a estrutura da mensagem SOAP é definida em um documento XML que contém os seguintes elementos: SOAP
  10. 10. WSDL WSDL (Web Services Description Language) é a linguagem de descrição de web services baseada em XML. Ela permite, através da definição de um vocabulário em XML, a possibilidade de descrever serviços e a troca de mensagens. Mais especificamente é responsável por prover as informações necessárias para a invocação do web service, como sua localização, operações disponíveis e suas assinaturas.
  11. 11. WSDL Message : define a part de cada mensagem associada a um tipo PortType : define “glossaryTerms” como um porta e <operation> define o metodo a ser chamado Input: “getTerms” tem com mensagem de entrada “getTermRequest” output: “getTerms” tem com mensagem de saída ‘“getTermresponse”
  12. 12. UDDI UDDI (Universal Description, Discovery and Integration) é um serviço de diretório onde empresas podem registrar (publicar) e buscar (descobrir) por serviços Web (Web Services). UDDI é ainda um framework de plataforma independente (desenvolvido na plataforma .NET) para descrever e integrar os serviços de negócios usando a internet, possibilitando assim uma exposição controlada dos serviços da empresa. A comunicação é realizada através do SOAP e as interfaces web service são descritas por WSDL. Um serviço de registro UDDI é um WS que gerencia informação sobre provedores, implementações e metadados de serviços. Provedores de serviços podem utilizar UDDI para publicar os serviços que eles oferecem. 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.
  13. 13. Vantagens do SOAP ● Pode atravessar firewalls com facilidade. ● Os dados do SOAP são estruturados usando XML. Portanto, as mensagens podem ser compreendidas por quase todas as plataformas de hardware, sistemas operacionais e linguagens de programação. ● Pode ser usado, potencialmente, em combinação com vários protocolos de transporte de dados, como HTTP, SMTP e FTP. ● O SOAP mapeia satisfatoriamente para o padrão de solicitação / resposta HTTP. ● Pode ser usado tanto de forma anônima como com autenticação (nome/senha).
  14. 14. Desvantagens do SOAP ● Pode ser usado tanto de forma anônima como com autenticação (nome/senha). ● Mecanismos de Segurança Imaturos. ● O SOAP não define mecanismo para criptografia do conteúdo de uma mensagem SOAP, o que evitaria que outros tivessem acesso ao conteúdo da mensagem. ● Não existe garantia quanto à entrega da mensagem. ● Um cliente SOAP não pode enviar uma solicitação a vários servidores, sem enviar a solicitação a todos os servidores. ● Incapacidade de transportar conteudo complexo como arquivos de imagens ou sons
  15. 15. Ligação SOAP + HTTP Requisição HTTP POST /item HTTP/1.1 Host: 189.123.345.239 Content-Type: text/plain Content-Length: 200 Uma requisição SOAP é uma requisição HTTP que usa o padrão de request/response definido pelas regras de codificação SOAP HTTP + XML = SOAP Uma requisição SOAP pode ser feita através de POST ou GET.
  16. 16. Rest REST: significa (Representational State Transfer) é um estilo de desenvolvimento de web services que teve origem na tese de doutorado de Roy Fielding
  17. 17. Caracteristicas ● Uso adequado dos métodos HTTP. ● Uso adequado de URL’s ● Uso adequado de cabeçalho HTTP ● Interligação entre vários recursos diferentes
  18. 18. Recursos O “marco zero” de REST é o recurso. Em REST, tudo é definido em termos de recursos, sendo estes os conjuntos de dados que são trafegados pelo protocolo. Os recursos são representados por URI’s
  19. 19. Exemplo Request Request: http://localhost:8080/cervejaria/clientes • http:// - Indica o protocolo que está sendo utilizado (no caso, HTTP); • localhost:8080 - Indica o servidor de rede que está sendo utilizado e a porta (quando a porta não é especificada, assume-se que é a padrão - no caso do protocolo HTTP, 80); • cervejaria - Indica o contexto da aplicação, ou seja, a raiz pela qual a aplicação está sendo fornecida para o cliente (Domínio). • clientes - É o endereço, de fato, do recurso - no caso, a listagem de clientes. Vou me referir a este, daqui em diante, como endereço do recurso.
  20. 20. Exemplo Response Exemplo de retorno: <clientes> <cliente id="1"> <nome>Alexandre</nome> <dataNascimento>2012-12-01</dataNascimento> </cliente> <cliente id="2"> <nome>Paulo</nome> <dataNascimento>2012-11-01</dataNascimento> </cliente> </clientes>
  21. 21. Exemplo Response Se você desejar, portanto, retornar um cliente específico, você deve utilizar uma URL diferente. Suponha, por exemplo, que você deseja retornar o cliente com id igual a 1: http://localhost:8080/cervejaria/clientes/1 Isso retornaria algo como: <cliente id="1"> <nome>Alexandre</nome> <dataNascimento>2012-12-01</dataNascimento> </cliente>
  22. 22. HTTP métodos Cada método possui particularidades e aplicações de acordo com a necessidade. Estas particularidades são definidas em termos de idempotência, segurança e mecanismo de passagem de parâmetros • GET • POST • PUT • DELETE • OPTIONS • HEAD • TRACE • CONNECT
  23. 23. Exemplo de código webservice rest Aplicação sobre bandas musicais.
  24. 24. SOAP VS REST SOAP: ● independência de transporte (SMTP, HTTP, UDP) ● Segurança ● Machine-readable ● Maior flexibilidade ● Interoperabilidade ● Serviço mais robusto.
  25. 25. SOAP VS REST ● Mensagens menores ● Simplicidade. ● Explora melhor com o HTTP. ● A comunicação não é restrita a xml.
  26. 26. Referencias [1]G. Alonso, F. Casati, H. Kuno, V. Machiraju. Web Services: Concepts, Architecture and Applications. Springer Verlag 2004 [2]G. Alonso, F. Casati, H. Kuno, V. Machiraju. Web Services: Concepts, Architecture and Applications. Springer Verlag 2004 [3]http://www.oreilly.com/catalog/progwebsoap/chapter/ch03.html [4]http://pt.wikipedia.org/wiki/Web_service [5]http://www.caelum.com.br/apostila-java-testes-jsf-web-services-design- patterns/acessando-um-web-service/#6-2-consumindo-dados-de-um-web- service [6]http://www.webopedia.com/TERM/W/Web_Services.html [7]http://www.devmedia.com.br/introducao-as-tecnologias-web-services-soa-

×