SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
DXC Proprietary and Confidential May 5, 2017
Web Services
Norberto Enomoto
norberto.enomoto@dxc.com
Integration / SOA Architect
May 5, 2017 2DXC Proprietary and Confidential
Agenda
1. O que é um Web Services?
2. Arquitetura de um Web Services
3. WSDL – Web Services Definition Language
4. Protocolo SOAP
5. Abordagens para desenvolvimento de um Web
Services: Bottom Up e Top Down
6. Exemplo de um Web Services utilizando
JDeveloper 12c
7. Referências
May 5, 2017 3DXC Proprietary and Confidential
O que é um Web Services?
Web services é uma solução utilizada na integração de sistemas e na comunicação entre
aplicações diferentes. Com esta tecnologia é possível que novas aplicações possam
interagir com aquelas que já existem e que sistemas desenvolvidos em plataformas
diferentes sejam compatíveis. Wikipedia
May 5, 2017 4DXC Proprietary and Confidential
Arquitetura de um Web Services
May 5, 2017 5DXC Proprietary and Confidential
WSDL – Web Services Definition Language
A WSDL é uma especificação que permite descrever um Web Services segundo um formato XML.
Um documento WSDL é um documento XML que descreve Web Services como um conjunto de pontos de
serviço (endpoints) que operam baseados em trocas de mensagens.
WSDL é uma linguagem extensível e permite a descrição de pontos de serviço e suas mensagens
independentemente de que formato de mensagens ou protocolo de rede é utilizado na comunicação.
Através da descrição do Web Services o provedor de serviços publica as especificações necessárias para o
cliente invocar um serviço – Contrato
O cliente não precisa saber qual a linguagem do programação ou plataforma de execução em que o provedor
de serviços está baseado.
May 5, 2017 6DXC Proprietary and Confidential
Estrutura de um WSDL
O uso de WSDL na arquitetura de Web Services é em geral dividido em duas partes:
Interface do Serviço - Abstrata
Implementação do Serviço - Concreta
May 5, 2017 7DXC Proprietary and Confidential
Estrutura de um WSDL
May 5, 2017 8DXC Proprietary and Confidential
Interface do Serviço (Abstrata) - WSDL
Especificação de interface de serviço é uma descrição de serviço reutilizável que pode ser instanciada e
implementada por diferentes implementações de serviços.
Semelhante a IDL (CORBA).
May 5, 2017 9DXC Proprietary and Confidential
Elementos da Interface de Serviço - WSDL
types
Definem os tipos de dados que são utilizados para descrever as mensagens. Para melhor interoperabilidade e
independência de plataforma indica-se o uso de XSD (XML Schema Documents)
<wsdl:types>
<xsd:schema targetNamespace="http://benchresources.in/services/BookService/">
<xsd:import namespace=http://benchresources.in/entities/Book
schemaLocation="book.xsd" />
</xsd:schema>
</wsdl:types>
May 5, 2017 10DXC Proprietary and Confidential
Elementos da Interface de Serviço - WSDL
message
Representam uma definição abstrata dos dados que serão transmitidos. Uma mensagem é composta por
diferentes partes lógicas que estão associadas com uma definição contida em um sistema de tipos.
<wsdl:message name="BookRequest">
<wsdl:part element="book:BookRequestType" name="parameters" />
</wsdl:message>
<wsdl:message name="BookNameRequest">
<wsdl:part element="book:BookNameRequestType" name="parameters" />
</wsdl:message>
<wsdl:message name="BookResponse">
<wsdl:part element="book:BookResponseType" name="parameters" />
</wsdl:message>
May 5, 2017 11DXC Proprietary and Confidential
Elementos da Interface de Serviço - WSDL
portType
São conjuntos de operações abstratas, cada uma contendo mensagens de entrada e saída.
<wsdl:portType name="IBookService">
<wsdl:operation name="getBookByISDNRequestNumber">
<wsdl:input message="tns:BookRequest" />
<wsdl:output message="tns:BookResponse" />
</wsdl:operation>
<wsdl:operation name="getBookDetailsByBookName">
<wsdl:input message="tns:BookNameRequest" />
<wsdl:output message="tns:BookResponse" />
</wsdl:operation>
</wsdl:portType>
May 5, 2017 12DXC Proprietary and Confidential
Elementos da Interface de Serviço - WSDL
operation
Definição abstrata de uma ação que um serviço pode executar
<wsdl:portType name="IBookService">
<wsdl:operation name="getBookByISDNRequestNumber">
<wsdl:input message="tns:BookRequest" />
<wsdl:output message="tns:BookResponse" />
</wsdl:operation>
<wsdl:operation name="getBookDetailsByBookName">
<wsdl:input message="tns:BookNameRequest" />
<wsdl:output message="tns:BookResponse" />
</wsdl:operation>
</wsdl:portType>
May 5, 2017 13DXC Proprietary and Confidential
Implementação do Serviço (Concreta) - WSDL
A implementação de serviço descreve como uma interface particular é implementada por um determinado
provedor de serviços. Os elementos que fazem parte da implementação do serviço são ports e services.
May 5, 2017 14DXC Proprietary and Confidential
Implementação do Serviço (Concreta) - WSDL
binding
Especificam protocolos concretos além de especificações de formatação de dados para as operações e mensagens definidas em um tipo de porta
particular.
<wsdl:binding name="BookServiceSOAPBinding" type="tns:IBookService">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="getBookByISDNRequestNumber">
<soap:operation soapAction="" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getBookDetailsByBookName">
<soap:operation soapAction="" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
May 5, 2017 15DXC Proprietary and Confidential
Implementação do Serviço (Concreta) - WSDL
port
Especifica um endereço para uma ligação, definindo então um endpoint único.
<wsdl:service name="BookService">
<wsdl:port name="BookServicePort" binding="tns:BookServiceSOAPBinding">
<soap:address
location="http://localhost:8080/Metro-JAX-WS-Top-
Down/services/BookService" />
</wsdl:port>
</wsdl:service>
May 5, 2017 16DXC Proprietary and Confidential
Implementação do Serviço (Concreta) - WSDL
service
Modela um Web Service agregando um conjunto de portas relacionados entre si.
<wsdl:service name="BookService">
<wsdl:port name="BookServicePort" binding="tns:BookServiceSOAPBinding">
<soap:address
location="http://localhost:8080/Metro-JAX-WS-Top-
Down/services/BookService" />
</wsdl:port>
</wsdl:service>
May 5, 2017 17DXC Proprietary and Confidential
Protocolo SOAP
SOAP (Simple Object Access Protocol, em português Protocolo Simples de Acesso a
Objetos) é um protocolo para troca de informações estruturadas em uma plataforma
descentralizada e distribuída.
May 5, 2017 18DXC Proprietary and Confidential
Abordagens para desenvolvimento de um Web Services:
Bottom Up e Top Down
Bottom up (Contract Last): Top Down (Contract First)
May 5, 2017 19DXC Proprietary and Confidential
Abordagens para desenvolvimento de um Web Services:
Bottom Up e Top Down
Bottom Up - Contract Last
Desenvolvimento do Web Services é um pouco mais
rápido e fácil
A fase inicial é muito fácil de desenvolver, mas a
manutenção é difícil .
Top Down - Contract First
É mais fácil criar web services a partir de um WSDL do
que a abordagem Bottom Up
Tem a vantagem de vc especificar o XSD para usar no
arquivo WSDL
Definindo seu schema (XSD) em um arquivo separado
permite reutilizar esse arquivo em diferentes WSDL (
Reutilização)
May 5, 2017 20DXC Proprietary and Confidential
Exemplo de um Web Services utilizando JDeveloper 12c
Bottom Up
Top Down
http://docs.oracle.com/cd/E53569_01/tutorials/tut_web_services/tut_web_services.html
May 5, 2017 21DXC Proprietary and Confidential
Referências
www.safaribooks.com
Livros do Thomas Erl: https://www.safaribooksonline.com/library/view/web-service-contract/9780131360648/
http://soapatterns.org/introduction
DXC Proprietary and Confidential
Obrigado.

Mais conteúdo relacionado

Semelhante a Web Services Arquitetura

Maratona JBoss 2010 - JBossWS
Maratona JBoss 2010 -  JBossWSMaratona JBoss 2010 -  JBossWS
Maratona JBoss 2010 - JBossWSDextra
 
Sistemas Distribuídos - Comunicação Distribuída – Web Services
Sistemas Distribuídos - Comunicação Distribuída – Web ServicesSistemas Distribuídos - Comunicação Distribuída – Web Services
Sistemas Distribuídos - Comunicação Distribuída – Web ServicesAdriano Teixeira de Souza
 
Web Services - Grupo F
Web Services - Grupo FWeb Services - Grupo F
Web Services - Grupo Fmdmansur
 
Web services, aplicações, acesso a aplicações, XML, API
Web services, aplicações, acesso a aplicações, XML, APIWeb services, aplicações, acesso a aplicações, XML, API
Web services, aplicações, acesso a aplicações, XML, APINuno Pereira
 
Do mapa mental para Serviços de Dados até APIs
Do mapa mental para Serviços de Dados até APIsDo mapa mental para Serviços de Dados até APIs
Do mapa mental para Serviços de Dados até APIsWSO2
 
Web Sphere Application Server
Web Sphere Application ServerWeb Sphere Application Server
Web Sphere Application ServerFabricio Carvalho
 
SOA e Web Services
SOA e Web ServicesSOA e Web Services
SOA e Web Servicessergiocrespo
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETRenato Groff
 
Sistemas Distribuídos - Aula 07 - Servicos Web
Sistemas Distribuídos - Aula 07 - Servicos WebSistemas Distribuídos - Aula 07 - Servicos Web
Sistemas Distribuídos - Aula 07 - Servicos WebArthur Emanuel
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETRenato Groff
 

Semelhante a Web Services Arquitetura (20)

Maratona JBoss 2010 - JBossWS
Maratona JBoss 2010 -  JBossWSMaratona JBoss 2010 -  JBossWS
Maratona JBoss 2010 - JBossWS
 
Web Services
Web ServicesWeb Services
Web Services
 
Sistemas Distribuídos - Comunicação Distribuída – Web Services
Sistemas Distribuídos - Comunicação Distribuída – Web ServicesSistemas Distribuídos - Comunicação Distribuída – Web Services
Sistemas Distribuídos - Comunicação Distribuída – Web Services
 
Web Services - Grupo F
Web Services - Grupo FWeb Services - Grupo F
Web Services - Grupo F
 
Web services, aplicações, acesso a aplicações, XML, API
Web services, aplicações, acesso a aplicações, XML, APIWeb services, aplicações, acesso a aplicações, XML, API
Web services, aplicações, acesso a aplicações, XML, API
 
Do mapa mental para Serviços de Dados até APIs
Do mapa mental para Serviços de Dados até APIsDo mapa mental para Serviços de Dados até APIs
Do mapa mental para Serviços de Dados até APIs
 
Web Service - XML
Web Service - XMLWeb Service - XML
Web Service - XML
 
DotNet vs. Java
DotNet vs. JavaDotNet vs. Java
DotNet vs. Java
 
Web services
Web  servicesWeb  services
Web services
 
Web Sphere Application Server
Web Sphere Application ServerWeb Sphere Application Server
Web Sphere Application Server
 
A Estrutura de um Web Service
A Estrutura de um Web ServiceA Estrutura de um Web Service
A Estrutura de um Web Service
 
SOA e Web Services
SOA e Web ServicesSOA e Web Services
SOA e Web Services
 
Mac5700
Mac5700Mac5700
Mac5700
 
WebServices-XML
WebServices-XMLWebServices-XML
WebServices-XML
 
WebServices intro
WebServices introWebServices intro
WebServices intro
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
 
Sistemas Distribuídos - Aula 07 - Servicos Web
Sistemas Distribuídos - Aula 07 - Servicos WebSistemas Distribuídos - Aula 07 - Servicos Web
Sistemas Distribuídos - Aula 07 - Servicos Web
 
Web service
Web serviceWeb service
Web service
 
WebServices
WebServicesWebServices
WebServices
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
 

Mais de Norberto Enomoto

Workshop Azure DevOps | Docker | Azure Kubernetes Services
Workshop Azure DevOps | Docker | Azure Kubernetes ServicesWorkshop Azure DevOps | Docker | Azure Kubernetes Services
Workshop Azure DevOps | Docker | Azure Kubernetes ServicesNorberto Enomoto
 
Workshop Azure DevOps Repos
Workshop Azure DevOps ReposWorkshop Azure DevOps Repos
Workshop Azure DevOps ReposNorberto Enomoto
 
Criação de uma API RESTful Multitenat em Spring Boot e Oracle database utiliz...
Criação de uma API RESTful Multitenat em Spring Boot e Oracle database utiliz...Criação de uma API RESTful Multitenat em Spring Boot e Oracle database utiliz...
Criação de uma API RESTful Multitenat em Spring Boot e Oracle database utiliz...Norberto Enomoto
 
Arquitetura de Microserviços
Arquitetura de MicroserviçosArquitetura de Microserviços
Arquitetura de MicroserviçosNorberto Enomoto
 
Protocolo MQTT: Message Queuing Telemetry Transport
Protocolo MQTT: Message Queuing Telemetry TransportProtocolo MQTT: Message Queuing Telemetry Transport
Protocolo MQTT: Message Queuing Telemetry TransportNorberto Enomoto
 
Arquitetura de Microserviços
Arquitetura de MicroserviçosArquitetura de Microserviços
Arquitetura de MicroserviçosNorberto Enomoto
 
Arquitetura de Microservicos
Arquitetura de MicroservicosArquitetura de Microservicos
Arquitetura de MicroservicosNorberto Enomoto
 
HP Communications and Media | Solutions IoT Platform
HP Communications and Media | Solutions IoT Platform HP Communications and Media | Solutions IoT Platform
HP Communications and Media | Solutions IoT Platform Norberto Enomoto
 
MQTT: Message Queuing Telemetry Transport (IoT)
MQTT: Message Queuing Telemetry Transport (IoT)MQTT: Message Queuing Telemetry Transport (IoT)
MQTT: Message Queuing Telemetry Transport (IoT)Norberto Enomoto
 
Overview Governança SOA - HP Brazil
Overview Governança SOA - HP BrazilOverview Governança SOA - HP Brazil
Overview Governança SOA - HP BrazilNorberto Enomoto
 
Oracle Service Bus - HP Brazil
Oracle Service Bus - HP BrazilOracle Service Bus - HP Brazil
Oracle Service Bus - HP BrazilNorberto Enomoto
 

Mais de Norberto Enomoto (14)

Resilience4j
Resilience4jResilience4j
Resilience4j
 
Azure Pipeline
Azure PipelineAzure Pipeline
Azure Pipeline
 
AWS ECS vs EKS
AWS ECS vs EKSAWS ECS vs EKS
AWS ECS vs EKS
 
Workshop Azure DevOps | Docker | Azure Kubernetes Services
Workshop Azure DevOps | Docker | Azure Kubernetes ServicesWorkshop Azure DevOps | Docker | Azure Kubernetes Services
Workshop Azure DevOps | Docker | Azure Kubernetes Services
 
Workshop Azure DevOps Repos
Workshop Azure DevOps ReposWorkshop Azure DevOps Repos
Workshop Azure DevOps Repos
 
Criação de uma API RESTful Multitenat em Spring Boot e Oracle database utiliz...
Criação de uma API RESTful Multitenat em Spring Boot e Oracle database utiliz...Criação de uma API RESTful Multitenat em Spring Boot e Oracle database utiliz...
Criação de uma API RESTful Multitenat em Spring Boot e Oracle database utiliz...
 
Arquitetura de Microserviços
Arquitetura de MicroserviçosArquitetura de Microserviços
Arquitetura de Microserviços
 
Protocolo MQTT: Message Queuing Telemetry Transport
Protocolo MQTT: Message Queuing Telemetry TransportProtocolo MQTT: Message Queuing Telemetry Transport
Protocolo MQTT: Message Queuing Telemetry Transport
 
Arquitetura de Microserviços
Arquitetura de MicroserviçosArquitetura de Microserviços
Arquitetura de Microserviços
 
Arquitetura de Microservicos
Arquitetura de MicroservicosArquitetura de Microservicos
Arquitetura de Microservicos
 
HP Communications and Media | Solutions IoT Platform
HP Communications and Media | Solutions IoT Platform HP Communications and Media | Solutions IoT Platform
HP Communications and Media | Solutions IoT Platform
 
MQTT: Message Queuing Telemetry Transport (IoT)
MQTT: Message Queuing Telemetry Transport (IoT)MQTT: Message Queuing Telemetry Transport (IoT)
MQTT: Message Queuing Telemetry Transport (IoT)
 
Overview Governança SOA - HP Brazil
Overview Governança SOA - HP BrazilOverview Governança SOA - HP Brazil
Overview Governança SOA - HP Brazil
 
Oracle Service Bus - HP Brazil
Oracle Service Bus - HP BrazilOracle Service Bus - HP Brazil
Oracle Service Bus - HP Brazil
 

Web Services Arquitetura

  • 1. DXC Proprietary and Confidential May 5, 2017 Web Services Norberto Enomoto norberto.enomoto@dxc.com Integration / SOA Architect
  • 2. May 5, 2017 2DXC Proprietary and Confidential Agenda 1. O que é um Web Services? 2. Arquitetura de um Web Services 3. WSDL – Web Services Definition Language 4. Protocolo SOAP 5. Abordagens para desenvolvimento de um Web Services: Bottom Up e Top Down 6. Exemplo de um Web Services utilizando JDeveloper 12c 7. Referências
  • 3. May 5, 2017 3DXC Proprietary and Confidential O que é um Web Services? Web services é uma solução utilizada na integração de sistemas e na comunicação entre aplicações diferentes. Com esta tecnologia é possível que novas aplicações possam interagir com aquelas que já existem e que sistemas desenvolvidos em plataformas diferentes sejam compatíveis. Wikipedia
  • 4. May 5, 2017 4DXC Proprietary and Confidential Arquitetura de um Web Services
  • 5. May 5, 2017 5DXC Proprietary and Confidential WSDL – Web Services Definition Language A WSDL é uma especificação que permite descrever um Web Services segundo um formato XML. Um documento WSDL é um documento XML que descreve Web Services como um conjunto de pontos de serviço (endpoints) que operam baseados em trocas de mensagens. WSDL é uma linguagem extensível e permite a descrição de pontos de serviço e suas mensagens independentemente de que formato de mensagens ou protocolo de rede é utilizado na comunicação. Através da descrição do Web Services o provedor de serviços publica as especificações necessárias para o cliente invocar um serviço – Contrato O cliente não precisa saber qual a linguagem do programação ou plataforma de execução em que o provedor de serviços está baseado.
  • 6. May 5, 2017 6DXC Proprietary and Confidential Estrutura de um WSDL O uso de WSDL na arquitetura de Web Services é em geral dividido em duas partes: Interface do Serviço - Abstrata Implementação do Serviço - Concreta
  • 7. May 5, 2017 7DXC Proprietary and Confidential Estrutura de um WSDL
  • 8. May 5, 2017 8DXC Proprietary and Confidential Interface do Serviço (Abstrata) - WSDL Especificação de interface de serviço é uma descrição de serviço reutilizável que pode ser instanciada e implementada por diferentes implementações de serviços. Semelhante a IDL (CORBA).
  • 9. May 5, 2017 9DXC Proprietary and Confidential Elementos da Interface de Serviço - WSDL types Definem os tipos de dados que são utilizados para descrever as mensagens. Para melhor interoperabilidade e independência de plataforma indica-se o uso de XSD (XML Schema Documents) <wsdl:types> <xsd:schema targetNamespace="http://benchresources.in/services/BookService/"> <xsd:import namespace=http://benchresources.in/entities/Book schemaLocation="book.xsd" /> </xsd:schema> </wsdl:types>
  • 10. May 5, 2017 10DXC Proprietary and Confidential Elementos da Interface de Serviço - WSDL message Representam uma definição abstrata dos dados que serão transmitidos. Uma mensagem é composta por diferentes partes lógicas que estão associadas com uma definição contida em um sistema de tipos. <wsdl:message name="BookRequest"> <wsdl:part element="book:BookRequestType" name="parameters" /> </wsdl:message> <wsdl:message name="BookNameRequest"> <wsdl:part element="book:BookNameRequestType" name="parameters" /> </wsdl:message> <wsdl:message name="BookResponse"> <wsdl:part element="book:BookResponseType" name="parameters" /> </wsdl:message>
  • 11. May 5, 2017 11DXC Proprietary and Confidential Elementos da Interface de Serviço - WSDL portType São conjuntos de operações abstratas, cada uma contendo mensagens de entrada e saída. <wsdl:portType name="IBookService"> <wsdl:operation name="getBookByISDNRequestNumber"> <wsdl:input message="tns:BookRequest" /> <wsdl:output message="tns:BookResponse" /> </wsdl:operation> <wsdl:operation name="getBookDetailsByBookName"> <wsdl:input message="tns:BookNameRequest" /> <wsdl:output message="tns:BookResponse" /> </wsdl:operation> </wsdl:portType>
  • 12. May 5, 2017 12DXC Proprietary and Confidential Elementos da Interface de Serviço - WSDL operation Definição abstrata de uma ação que um serviço pode executar <wsdl:portType name="IBookService"> <wsdl:operation name="getBookByISDNRequestNumber"> <wsdl:input message="tns:BookRequest" /> <wsdl:output message="tns:BookResponse" /> </wsdl:operation> <wsdl:operation name="getBookDetailsByBookName"> <wsdl:input message="tns:BookNameRequest" /> <wsdl:output message="tns:BookResponse" /> </wsdl:operation> </wsdl:portType>
  • 13. May 5, 2017 13DXC Proprietary and Confidential Implementação do Serviço (Concreta) - WSDL A implementação de serviço descreve como uma interface particular é implementada por um determinado provedor de serviços. Os elementos que fazem parte da implementação do serviço são ports e services.
  • 14. May 5, 2017 14DXC Proprietary and Confidential Implementação do Serviço (Concreta) - WSDL binding Especificam protocolos concretos além de especificações de formatação de dados para as operações e mensagens definidas em um tipo de porta particular. <wsdl:binding name="BookServiceSOAPBinding" type="tns:IBookService"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> <wsdl:operation name="getBookByISDNRequestNumber"> <soap:operation soapAction="" /> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="getBookDetailsByBookName"> <soap:operation soapAction="" /> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> </wsdl:binding>
  • 15. May 5, 2017 15DXC Proprietary and Confidential Implementação do Serviço (Concreta) - WSDL port Especifica um endereço para uma ligação, definindo então um endpoint único. <wsdl:service name="BookService"> <wsdl:port name="BookServicePort" binding="tns:BookServiceSOAPBinding"> <soap:address location="http://localhost:8080/Metro-JAX-WS-Top- Down/services/BookService" /> </wsdl:port> </wsdl:service>
  • 16. May 5, 2017 16DXC Proprietary and Confidential Implementação do Serviço (Concreta) - WSDL service Modela um Web Service agregando um conjunto de portas relacionados entre si. <wsdl:service name="BookService"> <wsdl:port name="BookServicePort" binding="tns:BookServiceSOAPBinding"> <soap:address location="http://localhost:8080/Metro-JAX-WS-Top- Down/services/BookService" /> </wsdl:port> </wsdl:service>
  • 17. May 5, 2017 17DXC Proprietary and Confidential Protocolo SOAP SOAP (Simple Object Access Protocol, em português Protocolo Simples de Acesso a Objetos) é um protocolo para troca de informações estruturadas em uma plataforma descentralizada e distribuída.
  • 18. May 5, 2017 18DXC Proprietary and Confidential Abordagens para desenvolvimento de um Web Services: Bottom Up e Top Down Bottom up (Contract Last): Top Down (Contract First)
  • 19. May 5, 2017 19DXC Proprietary and Confidential Abordagens para desenvolvimento de um Web Services: Bottom Up e Top Down Bottom Up - Contract Last Desenvolvimento do Web Services é um pouco mais rápido e fácil A fase inicial é muito fácil de desenvolver, mas a manutenção é difícil . Top Down - Contract First É mais fácil criar web services a partir de um WSDL do que a abordagem Bottom Up Tem a vantagem de vc especificar o XSD para usar no arquivo WSDL Definindo seu schema (XSD) em um arquivo separado permite reutilizar esse arquivo em diferentes WSDL ( Reutilização)
  • 20. May 5, 2017 20DXC Proprietary and Confidential Exemplo de um Web Services utilizando JDeveloper 12c Bottom Up Top Down http://docs.oracle.com/cd/E53569_01/tutorials/tut_web_services/tut_web_services.html
  • 21. May 5, 2017 21DXC Proprietary and Confidential Referências www.safaribooks.com Livros do Thomas Erl: https://www.safaribooksonline.com/library/view/web-service-contract/9780131360648/ http://soapatterns.org/introduction
  • 22. DXC Proprietary and Confidential Obrigado.