Computação Distribuída
 Considerações:

 1    Divisão da Aplicação em Máquinas Diferentes (Client x Server)


 2    Componentes são Acessados através de Protocolos (TCP, HTTP…)


 3    Benefícios: Performance, Manutenção, Reutilização


 4    Tecnologias: .NET Remotting, WebServices, Microsoft MQ




OBS: Os Web Services são DLL’S que serão Acessadas pelo Protocolo HTTP


                                                                         2
SOA (Service Oriented Architecture)
 Considerações:

 1   Funcionalidades devem ser Acessadas pelos Serviços


 2   Permite a Reutilização (FÁCIL) dos Serviços em outras Aplicações


 3   Desacoplamento das Regras de Negócio da Aplicação (UI)


 4   Funcionalidades: Log, Xml, SQL Server, Arquivos




OBS: Os Web Services Trabalham com o Modelo SOA


                                                                        3
Introdução Web Service
 Considerações:

 1   Tecnologia para Desenvolvimento de Aplicações Distribuídas


 2   É Mantido pelo W3C (World Wide Web Consortium)


 3   Utiliza Tecnologias Padrões (HTTP, SOAP (XML))


 4   Utiliza o Protocolo SOAP (Dados Trafegados no Formato XML)


 5   Pode ser Consumido por Qualquer Linguagem de Programação



                                                                  4
Considerações sobre Web Services
 Considerações:

 1   Incluídos na Plataforma .NET 1.0


 2   Possuem a Extensão .ASMX


 3   Herdam da Classe Base System.Web.Services.WebService


 4   Podem ser Criados COM ou SEM o Visual Studio


 5   Possuem 3 Etapas: Criação, Disponibilização, Execução



                                                             5
Aviso Importante




OBS: Na Plataforma .NET 4.0 (Não Existe o Template de Projeto Web Services)


                                                                              6
Principais Cenários de Utilização
 Considerações:

 1   Integrar Sistemas X Linguagens (Windows, Web, Mobile)


 2   Integrar Plataformas (Java, .NET, MainFrame)


 3   Integrar Empresas (Brasil, EUA, Austrália)




                                                             7
Cenário Padrão de um Web Service




         Aplicação                                        Serviço




Principal Finalidade é Disponibilizar Métodos que serão Acessados Remotamente


                                                                                8
Cenário de Vários Web Services
               Serviço
             PagSeguro              Serviço
                                    Correios




                         Internet




       Aplicação



                                               9
Cenário de Integração de Empresas
                                       Empresa B

                            Serviço



             Internet
 Aplicação


                                      Empresa C




                        Serviço



                                                   10
Cenário de Integração de Sistemas
                        Empresa


Financeiro                                       Vendas


                                   Serviço
              Serviço




 RH                                                Jurídico

             Serviço                   Serviço
                        Intranet




                                                              11
Demonstração
1   Criando um Projeto de Web Services (.NET 3.5)


2   Visualizando o Web Service (Service (ASMX e CS))


3   Visualizando o Atributo (WebService) -> Propriedade (Namespace)


4   Visualizando o Atributo (WebServiceBinding) - > Propriedade (ConformsTo)


5   Visualizando o Atributo (ScriptService)


6   Visualizando a Herança da Classe Base WebService


7   Executando o Web Services (Service.asmx)



                                                                               12
Demonstração
8    Conhecendo a Página Padrão dos Web Services


9    Alterando a Namespace (Tempuri.org)


10   Visualizando os Parâmetros (?Disco e ?Wsdl)


11   Conhecendo o Site www.xmethods.com




                                                   13
InfraEstrutura dos Web Services

         Serviço de Descoberta



          Descrição do Serviço



         Protocolo de Transporte



                                   14
Serviço de Descoberta
 Considerações:

 1   Processo de Localização de um Web Service (Intranet, Internet)


 2   Arquivo .disco contém a Localização do Web Service no Servidor


 3   Servidores UDDI contém Diversos Web Services




                                                                      15
Descrição do Serviço
 Considerações:

 1   WSDL, Linguagem Baseada em XML


 2   Descreve o Web Service (Métodos, Parâmetros, Tipos de Dados)


 3   WSDL Permite que o Cliente Conheça os Membros do Web Service




                                                                    16
Protocolo de Transporte
 Considerações:

 1   A Mensagem SOAP é Enviada pelo Protocolo HTTP


 2   As Informações do Serviço ficam Dentro do Proxy




                                                       17
Demonstração (Entity Framework)
1   Criando a Base (CURSO) e Tabelas (TB_LINGUAGEM, TB_DESENVOLVEDOR)


2   Criando a Estrutura de Pastas do Projeto (Servicos)


3   Criando o Entity Framework (Modelagem.edmx)


4   Criando o Web Service (ServicoswsTB_LINGUAGEM.asmx)


5   Criando os Métodos (Listar, Inserir, Alterar, Excluir)


6   Visualizando os Métodos (Ordenados ASC) no Web Service


7   Visualizando os Parâmetros (?Disco e ?Wsdl)


                                                                        18
Demonstração (Entity Framework)
8   Executando os Métodos (Listar, Inserir, Excluir, Alterar)


9   Ferramentas/Opções da Internet/Avançadas/Show Friendly HTTP Error Messages




                                                                                 19
Demonstração (Consumindo WS)
1   Consumindo os Serviços (Service, wsTB_LINGUAGEM)


2   Visualizando os Arquivos (Disco e Wsdl) do Proxy


3   Visualizando o Caminho dos Serviços no Web.Config


4   Criando a Estrutura de Pastas/Páginas do Projeto


5   Atualizando o Proxy


6   Executando a aplicação Cliente com o Serviço OFF-LINE




                                                            20
Considerações sobre Métodos
 Considerações:

 1   O Atributo [WebMethod] Controla a Visibilidade do Método


 2   O Parâmetro [Description] Descreve a Funcionalidade do Método


 3   O Parâmetro [MessageName] Permite a Sobrecarga de Métodos




                                                                     21
Demonstração
1   Executando o Serviço (Service.asmx) COM/SEM o Atributo WebMethod


2   Colocando Descrições no Serviço (Service.asmx) com o Parâmetro Description


3   Conhecendo o parâmetro MessageName




                                                                                 22
ASP.NET - Web Services

ASP.NET - Web Services

  • 2.
    Computação Distribuída Considerações: 1 Divisão da Aplicação em Máquinas Diferentes (Client x Server) 2 Componentes são Acessados através de Protocolos (TCP, HTTP…) 3 Benefícios: Performance, Manutenção, Reutilização 4 Tecnologias: .NET Remotting, WebServices, Microsoft MQ OBS: Os Web Services são DLL’S que serão Acessadas pelo Protocolo HTTP 2
  • 3.
    SOA (Service OrientedArchitecture) Considerações: 1 Funcionalidades devem ser Acessadas pelos Serviços 2 Permite a Reutilização (FÁCIL) dos Serviços em outras Aplicações 3 Desacoplamento das Regras de Negócio da Aplicação (UI) 4 Funcionalidades: Log, Xml, SQL Server, Arquivos OBS: Os Web Services Trabalham com o Modelo SOA 3
  • 4.
    Introdução Web Service Considerações: 1 Tecnologia para Desenvolvimento de Aplicações Distribuídas 2 É Mantido pelo W3C (World Wide Web Consortium) 3 Utiliza Tecnologias Padrões (HTTP, SOAP (XML)) 4 Utiliza o Protocolo SOAP (Dados Trafegados no Formato XML) 5 Pode ser Consumido por Qualquer Linguagem de Programação 4
  • 5.
    Considerações sobre WebServices Considerações: 1 Incluídos na Plataforma .NET 1.0 2 Possuem a Extensão .ASMX 3 Herdam da Classe Base System.Web.Services.WebService 4 Podem ser Criados COM ou SEM o Visual Studio 5 Possuem 3 Etapas: Criação, Disponibilização, Execução 5
  • 6.
    Aviso Importante OBS: NaPlataforma .NET 4.0 (Não Existe o Template de Projeto Web Services) 6
  • 7.
    Principais Cenários deUtilização Considerações: 1 Integrar Sistemas X Linguagens (Windows, Web, Mobile) 2 Integrar Plataformas (Java, .NET, MainFrame) 3 Integrar Empresas (Brasil, EUA, Austrália) 7
  • 8.
    Cenário Padrão deum Web Service Aplicação Serviço Principal Finalidade é Disponibilizar Métodos que serão Acessados Remotamente 8
  • 9.
    Cenário de VáriosWeb Services Serviço PagSeguro Serviço Correios Internet Aplicação 9
  • 10.
    Cenário de Integraçãode Empresas Empresa B Serviço Internet Aplicação Empresa C Serviço 10
  • 11.
    Cenário de Integraçãode Sistemas Empresa Financeiro Vendas Serviço Serviço RH Jurídico Serviço Serviço Intranet 11
  • 12.
    Demonstração 1 Criando um Projeto de Web Services (.NET 3.5) 2 Visualizando o Web Service (Service (ASMX e CS)) 3 Visualizando o Atributo (WebService) -> Propriedade (Namespace) 4 Visualizando o Atributo (WebServiceBinding) - > Propriedade (ConformsTo) 5 Visualizando o Atributo (ScriptService) 6 Visualizando a Herança da Classe Base WebService 7 Executando o Web Services (Service.asmx) 12
  • 13.
    Demonstração 8 Conhecendo a Página Padrão dos Web Services 9 Alterando a Namespace (Tempuri.org) 10 Visualizando os Parâmetros (?Disco e ?Wsdl) 11 Conhecendo o Site www.xmethods.com 13
  • 14.
    InfraEstrutura dos WebServices Serviço de Descoberta Descrição do Serviço Protocolo de Transporte 14
  • 15.
    Serviço de Descoberta Considerações: 1 Processo de Localização de um Web Service (Intranet, Internet) 2 Arquivo .disco contém a Localização do Web Service no Servidor 3 Servidores UDDI contém Diversos Web Services 15
  • 16.
    Descrição do Serviço Considerações: 1 WSDL, Linguagem Baseada em XML 2 Descreve o Web Service (Métodos, Parâmetros, Tipos de Dados) 3 WSDL Permite que o Cliente Conheça os Membros do Web Service 16
  • 17.
    Protocolo de Transporte Considerações: 1 A Mensagem SOAP é Enviada pelo Protocolo HTTP 2 As Informações do Serviço ficam Dentro do Proxy 17
  • 18.
    Demonstração (Entity Framework) 1 Criando a Base (CURSO) e Tabelas (TB_LINGUAGEM, TB_DESENVOLVEDOR) 2 Criando a Estrutura de Pastas do Projeto (Servicos) 3 Criando o Entity Framework (Modelagem.edmx) 4 Criando o Web Service (ServicoswsTB_LINGUAGEM.asmx) 5 Criando os Métodos (Listar, Inserir, Alterar, Excluir) 6 Visualizando os Métodos (Ordenados ASC) no Web Service 7 Visualizando os Parâmetros (?Disco e ?Wsdl) 18
  • 19.
    Demonstração (Entity Framework) 8 Executando os Métodos (Listar, Inserir, Excluir, Alterar) 9 Ferramentas/Opções da Internet/Avançadas/Show Friendly HTTP Error Messages 19
  • 20.
    Demonstração (Consumindo WS) 1 Consumindo os Serviços (Service, wsTB_LINGUAGEM) 2 Visualizando os Arquivos (Disco e Wsdl) do Proxy 3 Visualizando o Caminho dos Serviços no Web.Config 4 Criando a Estrutura de Pastas/Páginas do Projeto 5 Atualizando o Proxy 6 Executando a aplicação Cliente com o Serviço OFF-LINE 20
  • 21.
    Considerações sobre Métodos Considerações: 1 O Atributo [WebMethod] Controla a Visibilidade do Método 2 O Parâmetro [Description] Descreve a Funcionalidade do Método 3 O Parâmetro [MessageName] Permite a Sobrecarga de Métodos 21
  • 22.
    Demonstração 1 Executando o Serviço (Service.asmx) COM/SEM o Atributo WebMethod 2 Colocando Descrições no Serviço (Service.asmx) com o Parâmetro Description 3 Conhecendo o parâmetro MessageName 22