SlideShare uma empresa Scribd logo
1 de 17
Web Services XML
.NET Framework




 Leonardo Melo Santos
 leonardomelosantos@gmail.com
Agenda
   .NET Framework
   Deficiências do mercado
   Web Services XML
       Soluções
       Explicando Web Services XML
       WSDL, UDDI e SOAP
       Relação entre especificações
       Expondo e consumindo
.NET Framework

  VB      C++      C#     JScript      J#

       Common Language Specification

        ASP.NET




                                            Visual Studio.NET
                                            Visual Studio.NET
                                  Windows
 Web Forms Web Services
                                   Forms
  Mobile Internet Toolkit

              ADO.NET e XML

             Base Class Library

    Common Language Runtime (CLR)

            Sistema Operacional
Deficiências do mercado
   Muitos padrões
       “a vantagem de se ter muitos padrões é
        que você pode escolher qual usar”
   Diferenças entre linguagens
     Uso da IDL
   Compra de produtos (CORBA)
   Interoperabilidade entre plataformas
   Problemas com firewalls que barram
    portas TCP/IP
   Dificuldade em descobrir e distribuir
    objetos para terceiros
Web Services XML
   Tecnologia de chamada remota de objetos
    baseada na arquitetura orientada a serviços
   Permite a infra-estrutura para criação de
    aplicações distribuídas (Web ou não)
   Utiliza protocolos da 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
   Composto por linguagens e protocolos
    abertos e largamente adotados pelo mercado:
       HTTP, XML, SOAP, WSDL, UDDI
Web Services XML - Soluções
   Utiliza HTTP para transporte de dados
       Chamadas SOAP são chamadas HTTP GET
        ou POST
       Utiliza porta 80, permitida pelos firewalls
       Padrão entre plataformas
   Mensagens SOAP são formatadas em
    XML
       Não gera problemas de incompatibilidade
        binária
       Padrão entre linguagens
Explicando Web Services XML
                                  DCOM
                                  RMI                    COM Object
                                  LU 6.2                 Java Bean
                                                         Tx Program


                                      Regra de
    Aplicação        Protocolo
                                      negócio
Plataforma cliente               Plataforma servidor


                                                       Windows 2000
       Toda plataforma tem associado
       Toda plataforma tem associado                   Java VM
       um paradigma de programação                     CICS OS/390
        um paradigma de programação
              e um protocolo.
               e um protocolo.
Explicando Web Services XML
                                  DCOM
                                 ???
                                  RMI
                                  LU 6.2
                                                         COM Object
                                                         Java Bean
                                                         Tx Program


                                      Regra de
    Aplicação        Protocolo
                                      negócio
Plataforma cliente               Plataforma servidor


                                                       Windows 2000
          Na interoperabilidade entre
          Na interoperabilidade entre                  Java VM
                                                       CICS OS/390
           plataformas, não há um
            plataformas, não há um
              protocolo comum.
               protocolo comum.
Explicando Web Services XML
                                  Protocolos Web padrão


                                                          COM Object
                                                          Java Bean
                                                          Tx Program
                                      Regra de
    Aplicação        Protocolo
                                      negócio
Plataforma cliente               Plataforma servidor


                                                       Windows 2000
        Protocolos Web padrão fazem
        Protocolos Web padrão fazem                    Java VM
                                                       CICS OS/390
        a específica regra de negócio
         a específica regra de negócio
          se tornar um Web Service.
           se tornar um Web Service.
Web Services XML - Padrões
                                  Web
       Protocolos                Service
          Web
         padrão


   Diretório dos Web Services                   UDDI
                                        Universal Description,
                                         Universal Description,
    na Internet ou na Intranet         Discovery, and Integration
                                       Discovery, and Integration

                                                WSDL
   Descrição da definição do Web             Web Services
                                              Web Services
                                           Description Language
    Service (especificação W3C)            Description Language

                                                SOAP
   Protocolo de comuniação dos               Simple Object
                                              Simple Object
                                             Access Protocol
    Web Services                             Access Protocol

   Feitos com padrões Web                 XML, XSD & HTTP
WSDL
Web Services definition language
   Especificação W3C que fornece a
    descrição de definições de Web
    Services
UDDI
Universal Description, Discovery and Integration
   Desenvolvido para a organização e
    registro de Web Services
   Especificação técnica que tem como
    objetivo descrever, descobrir e integrar
    Web Services. Define:
       Esquemas XML do modelo de dados do
        registro e do formato das mensagens;
       Definições WSDL das APIs SOAP
   http://www.uddi.org
    http://uddi.microsoft.com
SOAP
Simple Object Access Protocol
   Protocolo utilizado pelos WebServices;
   A especificação estabelece um formato
    padrão de mensagem que consiste em
    um documento XML
       Capaz de hospedar dados RPC e centrados
        em documentos
   Um nó SOAP representa o
    processamento lógico responsável pela
    transmissão, recebimento de realização
    de uma série de tarefas sobre
    mensagens SOAP
Relação entre especificações
    UDDI              É acessado
                       utilizando
                                           SOAP
       Permite a
     descoberta de
                            Ligação para

               WSDL


                          Permite a
           Descreve    comunicação entre




       Web
     Services
Expondo Web Services XML
     Internet Information
    Services (web server)        Gera automaticamente:
  [WebMethod]
  public String HelloWorld() {                   SOAP
     return “Hello World!”;                      WSDL
  }
                                                 XML




  Internet


                                     Publicação em
                                          servidor UDDI
Consumindo Web Services XML


                                              Localização via
                                               servidor UDDI

                                                 Internet



                  WSDL
                                                                Web Service


                                    Gera automaticamente:
                                    Classes de proxy cliente


com.microsoft.www.HelloService ws =
new com.microsoft.www.HelloService();
String retorno = we.HelloWorld();
Referências
   “Introdução às tecnologias Web
    Services – Parte 1”, Revista Web
    Mobile, Ed. DevMedia, Edição 01
   “Introdução às tecnologias Web
    Services – Parte 2”, Revista Web
    Mobile, Ed. DevMedia, Edição 02
   Encarte de divulgação “Web Services
    XML com Microsoft .NET”

Mais conteúdo relacionado

Mais procurados

Sistemas Distribuidos Java
Sistemas Distribuidos JavaSistemas Distribuidos Java
Sistemas Distribuidos Javalimadavi
 
Introdução a Web Services
Introdução a Web ServicesIntrodução a Web Services
Introdução a Web ServicesFabio Leal
 
SOA e Web Services
SOA e Web ServicesSOA e Web Services
SOA e Web Servicessergiocrespo
 
Interop day wcf_presentation
Interop day wcf_presentationInterop day wcf_presentation
Interop day wcf_presentationAndre_Bonfante
 
04 - Felipe Oliveira - Think Decoupled! (SOA)
04 - Felipe Oliveira - Think Decoupled! (SOA)04 - Felipe Oliveira - Think Decoupled! (SOA)
04 - Felipe Oliveira - Think Decoupled! (SOA)DNAD
 
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
 
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)Renato Groff
 
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...
TDC2016POA | Trilha Arquetetura -  Revitalizando aplicações desktop usando Ce...TDC2016POA | Trilha Arquetetura -  Revitalizando aplicações desktop usando Ce...
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...tdc-globalcode
 
Distribuindo Aplicações com WCF
Distribuindo Aplicações com WCFDistribuindo Aplicações com WCF
Distribuindo Aplicações com WCF.NetArchitects
 
Web Sphere Application Server
Web Sphere Application ServerWeb Sphere Application Server
Web Sphere Application ServerFabricio Carvalho
 
O que ganhamos com Java e Cloud Computing?
O que ganhamos com Java e Cloud Computing?O que ganhamos com Java e Cloud Computing?
O que ganhamos com Java e Cloud Computing?Bruno Borges
 

Mais procurados (17)

Sistemas Distribuidos Java
Sistemas Distribuidos JavaSistemas Distribuidos Java
Sistemas Distribuidos Java
 
Introdução a Web Services
Introdução a Web ServicesIntrodução a Web Services
Introdução a Web Services
 
SOA e Web Services
SOA e Web ServicesSOA e Web Services
SOA e Web Services
 
Interop day wcf_presentation
Interop day wcf_presentationInterop day wcf_presentation
Interop day wcf_presentation
 
04 - Felipe Oliveira - Think Decoupled! (SOA)
04 - Felipe Oliveira - Think Decoupled! (SOA)04 - Felipe Oliveira - Think Decoupled! (SOA)
04 - Felipe Oliveira - Think Decoupled! (SOA)
 
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
 
Web services
Web  servicesWeb  services
Web services
 
Web services
Web servicesWeb services
Web services
 
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)
 
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
 
Rest
RestRest
Rest
 
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...
TDC2016POA | Trilha Arquetetura -  Revitalizando aplicações desktop usando Ce...TDC2016POA | Trilha Arquetetura -  Revitalizando aplicações desktop usando Ce...
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...
 
Distribuindo Aplicações com WCF
Distribuindo Aplicações com WCFDistribuindo Aplicações com WCF
Distribuindo Aplicações com WCF
 
WebServices-XML
WebServices-XMLWebServices-XML
WebServices-XML
 
Web Sphere Application Server
Web Sphere Application ServerWeb Sphere Application Server
Web Sphere Application Server
 
O que ganhamos com Java e Cloud Computing?
O que ganhamos com Java e Cloud Computing?O que ganhamos com Java e Cloud Computing?
O que ganhamos com Java e Cloud Computing?
 
Web Sphere
Web SphereWeb Sphere
Web Sphere
 

Semelhante a Web Services XML: Soluções para Interoperabilidade e Descoberta de Serviços

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
 
Web Services Xml
Web Services XmlWeb Services Xml
Web Services XmlUFMG
 
Chamada remota de procedimentos .net
Chamada remota de procedimentos   .netChamada remota de procedimentos   .net
Chamada remota de procedimentos .netGabii Fonseca
 
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
 
Apresentação web services
Apresentação web servicesApresentação web services
Apresentação web servicesVitor Fonseca
 
AAB306 - Wcf Services Best Practices - wcamb
AAB306 - Wcf Services Best Practices - wcambAAB306 - Wcf Services Best Practices - wcamb
AAB306 - Wcf Services Best Practices - wcambMicrosoft Brasil
 
JustJava 2005: Web Services em Java com o JWSDP 1.5
JustJava 2005: Web Services em Java com o JWSDP 1.5JustJava 2005: Web Services em Java com o JWSDP 1.5
JustJava 2005: Web Services em Java com o JWSDP 1.5Helder da Rocha
 
Mini Curso Web Services com PHP
Mini Curso Web Services com PHPMini Curso Web Services com PHP
Mini Curso Web Services com PHPelliando dias
 
Palestra Plataforma .NET na ETEC Marília
Palestra Plataforma .NET na ETEC MaríliaPalestra Plataforma .NET na ETEC Marília
Palestra Plataforma .NET na ETEC MaríliaElvis Fusco
 
WCF Brasil - Introdução ao WCF
WCF Brasil - Introdução ao WCFWCF Brasil - Introdução ao WCF
WCF Brasil - Introdução ao WCFFabian Gehrke
 
AAB303 - Windows Communication Foundation - wcamb
AAB303 - Windows Communication Foundation - wcambAAB303 - Windows Communication Foundation - wcamb
AAB303 - Windows Communication Foundation - wcambMicrosoft Brasil
 

Semelhante a Web Services XML: Soluções para Interoperabilidade e Descoberta de Serviços (20)

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 Services Xml
Web Services XmlWeb Services Xml
Web Services Xml
 
WCF
WCFWCF
WCF
 
Chamada remota de procedimentos .net
Chamada remota de procedimentos   .netChamada remota de procedimentos   .net
Chamada remota de procedimentos .net
 
Web Service - XML
Web Service - XMLWeb Service - XML
Web Service - XML
 
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
 
Webservices
WebservicesWebservices
Webservices
 
Web service
Web serviceWeb service
Web service
 
Web Services - Grupo F
Web Services - Grupo FWeb Services - Grupo F
Web Services - Grupo F
 
ASP.NET - Web Services
ASP.NET - Web ServicesASP.NET - Web Services
ASP.NET - Web Services
 
Apresentação web services
Apresentação web servicesApresentação web services
Apresentação web services
 
AAB306 - Wcf Services Best Practices - wcamb
AAB306 - Wcf Services Best Practices - wcambAAB306 - Wcf Services Best Practices - wcamb
AAB306 - Wcf Services Best Practices - wcamb
 
JustJava 2005: Web Services em Java com o JWSDP 1.5
JustJava 2005: Web Services em Java com o JWSDP 1.5JustJava 2005: Web Services em Java com o JWSDP 1.5
JustJava 2005: Web Services em Java com o JWSDP 1.5
 
WebServices intro
WebServices introWebServices intro
WebServices intro
 
Mini Curso Web Services com PHP
Mini Curso Web Services com PHPMini Curso Web Services com PHP
Mini Curso Web Services com PHP
 
Web Services
Web ServicesWeb Services
Web Services
 
Palestra Plataforma .NET na ETEC Marília
Palestra Plataforma .NET na ETEC MaríliaPalestra Plataforma .NET na ETEC Marília
Palestra Plataforma .NET na ETEC Marília
 
WCF Brasil - Introdução ao WCF
WCF Brasil - Introdução ao WCFWCF Brasil - Introdução ao WCF
WCF Brasil - Introdução ao WCF
 
Docker para devs .NET
Docker para devs .NETDocker para devs .NET
Docker para devs .NET
 
AAB303 - Windows Communication Foundation - wcamb
AAB303 - Windows Communication Foundation - wcambAAB303 - Windows Communication Foundation - wcamb
AAB303 - Windows Communication Foundation - wcamb
 

Mais de Leonardo Melo Santos

Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...Leonardo Melo Santos
 
Curso de OO com C# - Parte 06 - ADO.NET
Curso de OO com C# - Parte 06 - ADO.NETCurso de OO com C# - Parte 06 - ADO.NET
Curso de OO com C# - Parte 06 - ADO.NETLeonardo Melo Santos
 
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricasCurso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricasLeonardo Melo Santos
 
Curso de OO com C# - Parte 04 - Estruturas de controle e Strings
Curso de OO com C# - Parte 04 - Estruturas de controle e StringsCurso de OO com C# - Parte 04 - Estruturas de controle e Strings
Curso de OO com C# - Parte 04 - Estruturas de controle e StringsLeonardo Melo Santos
 
Curso de OO com C# - Parte 03 - Plataforma .NET
Curso de OO com C# - Parte 03 - Plataforma .NETCurso de OO com C# - Parte 03 - Plataforma .NET
Curso de OO com C# - Parte 03 - Plataforma .NETLeonardo Melo Santos
 
Curso de OO com C# - Parte 02 - Introdução ao C#
Curso de OO com C# - Parte 02 - Introdução ao C#Curso de OO com C# - Parte 02 - Introdução ao C#
Curso de OO com C# - Parte 02 - Introdução ao C#Leonardo Melo Santos
 
Curso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosCurso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosLeonardo Melo Santos
 
Desenvolvimento de aplicações Java™ para TV Digital
Desenvolvimento de aplicações Java™ para TV DigitalDesenvolvimento de aplicações Java™ para TV Digital
Desenvolvimento de aplicações Java™ para TV DigitalLeonardo Melo Santos
 
Curso de J2ME - Parte 04 - Otimização
Curso de J2ME - Parte 04 - OtimizaçãoCurso de J2ME - Parte 04 - Otimização
Curso de J2ME - Parte 04 - OtimizaçãoLeonardo Melo Santos
 
Curso de J2ME - Parte 03 - Desenvolvimento de aplicações
Curso de J2ME - Parte 03 - Desenvolvimento de aplicaçõesCurso de J2ME - Parte 03 - Desenvolvimento de aplicações
Curso de J2ME - Parte 03 - Desenvolvimento de aplicaçõesLeonardo Melo Santos
 
Curso de J2ME - Parte 02 - Ambiente de desenvolvimento
Curso de J2ME - Parte 02 - Ambiente de desenvolvimentoCurso de J2ME - Parte 02 - Ambiente de desenvolvimento
Curso de J2ME - Parte 02 - Ambiente de desenvolvimentoLeonardo Melo Santos
 
Curso de J2ME - Parte 01 - Conceitos básicos
Curso de J2ME - Parte 01 - Conceitos básicosCurso de J2ME - Parte 01 - Conceitos básicos
Curso de J2ME - Parte 01 - Conceitos básicosLeonardo Melo Santos
 
Fundamentos de sistemas de informação
Fundamentos de sistemas de informaçãoFundamentos de sistemas de informação
Fundamentos de sistemas de informaçãoLeonardo Melo Santos
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosLeonardo Melo Santos
 
Trabalho em equipe e ética no trabalho
Trabalho em equipe e ética no trabalhoTrabalho em equipe e ética no trabalho
Trabalho em equipe e ética no trabalhoLeonardo Melo Santos
 
Verificação e validação de software
Verificação e validação de softwareVerificação e validação de software
Verificação e validação de softwareLeonardo Melo Santos
 
Marketing pessoal e as redes sociais
Marketing pessoal e as redes sociaisMarketing pessoal e as redes sociais
Marketing pessoal e as redes sociaisLeonardo Melo Santos
 

Mais de Leonardo Melo Santos (20)

Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
 
Curso de OO com C# - Parte 06 - ADO.NET
Curso de OO com C# - Parte 06 - ADO.NETCurso de OO com C# - Parte 06 - ADO.NET
Curso de OO com C# - Parte 06 - ADO.NET
 
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricasCurso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
 
Curso de OO com C# - Parte 04 - Estruturas de controle e Strings
Curso de OO com C# - Parte 04 - Estruturas de controle e StringsCurso de OO com C# - Parte 04 - Estruturas de controle e Strings
Curso de OO com C# - Parte 04 - Estruturas de controle e Strings
 
Curso de OO com C# - Parte 03 - Plataforma .NET
Curso de OO com C# - Parte 03 - Plataforma .NETCurso de OO com C# - Parte 03 - Plataforma .NET
Curso de OO com C# - Parte 03 - Plataforma .NET
 
Curso de OO com C# - Parte 02 - Introdução ao C#
Curso de OO com C# - Parte 02 - Introdução ao C#Curso de OO com C# - Parte 02 - Introdução ao C#
Curso de OO com C# - Parte 02 - Introdução ao C#
 
Curso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosCurso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetos
 
Scrum - Visão Geral
Scrum - Visão GeralScrum - Visão Geral
Scrum - Visão Geral
 
Desenvolvimento de aplicações Java™ para TV Digital
Desenvolvimento de aplicações Java™ para TV DigitalDesenvolvimento de aplicações Java™ para TV Digital
Desenvolvimento de aplicações Java™ para TV Digital
 
DotNet Remoting - .NET framework
DotNet Remoting - .NET frameworkDotNet Remoting - .NET framework
DotNet Remoting - .NET framework
 
Curso de J2ME - Parte 04 - Otimização
Curso de J2ME - Parte 04 - OtimizaçãoCurso de J2ME - Parte 04 - Otimização
Curso de J2ME - Parte 04 - Otimização
 
Curso de J2ME - Parte 03 - Desenvolvimento de aplicações
Curso de J2ME - Parte 03 - Desenvolvimento de aplicaçõesCurso de J2ME - Parte 03 - Desenvolvimento de aplicações
Curso de J2ME - Parte 03 - Desenvolvimento de aplicações
 
Curso de J2ME - Parte 02 - Ambiente de desenvolvimento
Curso de J2ME - Parte 02 - Ambiente de desenvolvimentoCurso de J2ME - Parte 02 - Ambiente de desenvolvimento
Curso de J2ME - Parte 02 - Ambiente de desenvolvimento
 
Curso de J2ME - Parte 01 - Conceitos básicos
Curso de J2ME - Parte 01 - Conceitos básicosCurso de J2ME - Parte 01 - Conceitos básicos
Curso de J2ME - Parte 01 - Conceitos básicos
 
Sistemas Workflow
Sistemas WorkflowSistemas Workflow
Sistemas Workflow
 
Fundamentos de sistemas de informação
Fundamentos de sistemas de informaçãoFundamentos de sistemas de informação
Fundamentos de sistemas de informação
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetos
 
Trabalho em equipe e ética no trabalho
Trabalho em equipe e ética no trabalhoTrabalho em equipe e ética no trabalho
Trabalho em equipe e ética no trabalho
 
Verificação e validação de software
Verificação e validação de softwareVerificação e validação de software
Verificação e validação de software
 
Marketing pessoal e as redes sociais
Marketing pessoal e as redes sociaisMarketing pessoal e as redes sociais
Marketing pessoal e as redes sociais
 

Web Services XML: Soluções para Interoperabilidade e Descoberta de Serviços

  • 1. Web Services XML .NET Framework Leonardo Melo Santos leonardomelosantos@gmail.com
  • 2. Agenda  .NET Framework  Deficiências do mercado  Web Services XML  Soluções  Explicando Web Services XML  WSDL, UDDI e SOAP  Relação entre especificações  Expondo e consumindo
  • 3. .NET Framework VB C++ C# JScript J# Common Language Specification ASP.NET Visual Studio.NET Visual Studio.NET Windows Web Forms Web Services Forms Mobile Internet Toolkit ADO.NET e XML Base Class Library Common Language Runtime (CLR) Sistema Operacional
  • 4. Deficiências do mercado  Muitos padrões  “a vantagem de se ter muitos padrões é que você pode escolher qual usar”  Diferenças entre linguagens  Uso da IDL  Compra de produtos (CORBA)  Interoperabilidade entre plataformas  Problemas com firewalls que barram portas TCP/IP  Dificuldade em descobrir e distribuir objetos para terceiros
  • 5. Web Services XML  Tecnologia de chamada remota de objetos baseada na arquitetura orientada a serviços  Permite a infra-estrutura para criação de aplicações distribuídas (Web ou não)  Utiliza protocolos da 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  Composto por linguagens e protocolos abertos e largamente adotados pelo mercado:  HTTP, XML, SOAP, WSDL, UDDI
  • 6. Web Services XML - Soluções  Utiliza HTTP para transporte de dados  Chamadas SOAP são chamadas HTTP GET ou POST  Utiliza porta 80, permitida pelos firewalls  Padrão entre plataformas  Mensagens SOAP são formatadas em XML  Não gera problemas de incompatibilidade binária  Padrão entre linguagens
  • 7. Explicando Web Services XML DCOM RMI COM Object LU 6.2 Java Bean Tx Program Regra de Aplicação Protocolo negócio Plataforma cliente Plataforma servidor Windows 2000 Toda plataforma tem associado Toda plataforma tem associado Java VM um paradigma de programação CICS OS/390 um paradigma de programação e um protocolo. e um protocolo.
  • 8. Explicando Web Services XML DCOM ??? RMI LU 6.2 COM Object Java Bean Tx Program Regra de Aplicação Protocolo negócio Plataforma cliente Plataforma servidor Windows 2000 Na interoperabilidade entre Na interoperabilidade entre Java VM CICS OS/390 plataformas, não há um plataformas, não há um protocolo comum. protocolo comum.
  • 9. Explicando Web Services XML Protocolos Web padrão COM Object Java Bean Tx Program Regra de Aplicação Protocolo negócio Plataforma cliente Plataforma servidor Windows 2000 Protocolos Web padrão fazem Protocolos Web padrão fazem Java VM CICS OS/390 a específica regra de negócio a específica regra de negócio se tornar um Web Service. se tornar um Web Service.
  • 10. Web Services XML - Padrões Web Protocolos Service Web padrão  Diretório dos Web Services UDDI Universal Description, Universal Description, na Internet ou na Intranet Discovery, and Integration Discovery, and Integration WSDL  Descrição da definição do Web Web Services Web Services Description Language Service (especificação W3C) Description Language SOAP  Protocolo de comuniação dos Simple Object Simple Object Access Protocol Web Services Access Protocol  Feitos com padrões Web XML, XSD & HTTP
  • 11. WSDL Web Services definition language  Especificação W3C que fornece a descrição de definições de Web Services
  • 12. UDDI Universal Description, Discovery and Integration  Desenvolvido para a organização e registro de Web Services  Especificação técnica que tem como objetivo descrever, descobrir e integrar Web Services. Define:  Esquemas XML do modelo de dados do registro e do formato das mensagens;  Definições WSDL das APIs SOAP  http://www.uddi.org http://uddi.microsoft.com
  • 13. SOAP Simple Object Access Protocol  Protocolo utilizado pelos WebServices;  A especificação estabelece um formato padrão de mensagem que consiste em um documento XML  Capaz de hospedar dados RPC e centrados em documentos  Um nó SOAP representa o processamento lógico responsável pela transmissão, recebimento de realização de uma série de tarefas sobre mensagens SOAP
  • 14. Relação entre especificações UDDI É acessado utilizando SOAP Permite a descoberta de Ligação para WSDL Permite a Descreve comunicação entre Web Services
  • 15. Expondo Web Services XML Internet Information Services (web server) Gera automaticamente: [WebMethod] public String HelloWorld() { SOAP return “Hello World!”; WSDL } XML Internet Publicação em servidor UDDI
  • 16. Consumindo Web Services XML Localização via servidor UDDI Internet WSDL Web Service Gera automaticamente: Classes de proxy cliente com.microsoft.www.HelloService ws = new com.microsoft.www.HelloService(); String retorno = we.HelloWorld();
  • 17. Referências  “Introdução às tecnologias Web Services – Parte 1”, Revista Web Mobile, Ed. DevMedia, Edição 01  “Introdução às tecnologias Web Services – Parte 2”, Revista Web Mobile, Ed. DevMedia, Edição 02  Encarte de divulgação “Web Services XML com Microsoft .NET”