Criação de um Web Services em.net



Documentos relacionados
Criação de um Web Services em.net

Criando & Consumindo um WebService com ASP.NET 2.0 Publicado em: 25 de Agosto de 2007 Por Herman Ferdinando Arais

Programação para Internet Avançada. 4. Web Services. Nuno Miguel Gil Fonseca

Manual de Integração. Tecnologia: WebServices SOAP XML. Área: CDC. Produto: CDC Pessoa Física NFE (RFB) Versão: 1.0. Autor: Angelo Bestetti Junior

Web Services na plataforma.net

Manual de Integração. Tecnologia: WebServices SOAP XML. Área: CDC. Produto: CDC Estendida (Física) Versão: 1.0. Autor: Angelo Bestetti Junior

Cálculo Remoto de Preços e Prazos de Encomendas

Webservice LerChaveAutenticadora

Nota Fiscal Paulista. Manual para Envio de Arquivo de Cupons Fiscais via Webservice GOVERNO DO ESTADO DE SÃO PAULO

SOAP. Web Services & SOAP. Tecnologias de Middleware 2004/2005. Simple Object Access Protocol. Simple Object Access Protocol SOAP

A interface do Microsoft Visual Studio 2005

Connection String usada por uma Class Library

LAB 18: ASP.NET e Web Services

Manual de Integração. Tecnologia: WebServices SOAP XML. Área: Serviços de Informação. Produto: CEP. Versão: 1.0. Autor: Angelo Bestetti Junior

Conteúdo da Aula de Hoje. Web Services. Avaliação da Disciplina. O que é um web service? O que é um web service? Vantagens

Criação de uma aplicação Web ASP.NET MVC usando Code First

Cálculo Remoto de Preços e Prazos de Encomendas

Num sistema de objectos distribuídos, dois conceitos são fundamentais.

Consulta de endereço através do Cep

Forms Authentication em ASP.NET

Guia Desenvolvedor WebService SisConsulta - v2.0.5

Sistemas Paralelos e Distribuídos /2004 Curso: Matemática /Informática Sistemas Distribuídos /2004 Curso: Ensino da Informática

Manual de Integração. Tecnologia: WebServices SOAP XML. Área: CDC. Produto: CDC Simplificada (Juridica) Versão: 1.0. Autor: Angelo Bestetti Junior

Projeto SNGPC para Farmácias e Drogarias

Guia e Utilização do Visual Studio 6.0

Web Services em Java. Web Services JAX-WS. NetBeans 5.5. Criação de WS no NetBeans 5.5. Criação de WS no NetBeans 5.5

Laboratório de Programação I

BC CORREIO SISTEMA DE CORREIO ELETRÔNICO DO BANCO CENTRAL DO BRASIL. Manual do Web Service

AJAX no GASweb. Mas e afinal, para que usamos o AJAX?

Módulo 3936 ASP.NET. Financiado pelo FSE

APLICAÇÕES E SERVIÇOS WEB

Para baixá-lo entre no site : Selecione a aba Downloads ; Clique no link: Microsoft Visual C# Express 2010; Por meio desse

Tarefa Orientada 2 Visual Studio 2005 e Visual C#

WSDL e UDDI. Pedro Miguel Martins Nunes WSDL. WSDL Exemplo prático Resumo UDDI. Serviço UDDI Estruturas de dados UDDI e WSDL API Resumo


Módulo 3936 ASP.NET. Financiado pelo FSE

Software Adobe DreamWeaver. Requisitos para criar aplicações Web

UNIVERSIDADE. Sistemas Distribuídos

REDES DE COMPUTADORES I 2007/2008 LEIC - Tagus-Park TPC Nº 2. Avaliação sumária da matéria do Capítulo 2

1 Code::Blocks Criação de projetos

Manual de Administração Intranet BNI

EAI Manual do Administrador

Criação de Filmes em Windows Movie Maker Nível B3

Visual Studio.NET - C# Parte 2 Windows Forms e Web Services

ASP.NET Gerando relatórios com o ReportViewer

Manual de Integração WebService

Prática em Laboratório N.01 Criando um Serviço Web via Console

DESENVOLVIMENTO DE SOFTWARE PARA INTERNET LABORATÓRIO 1 PROF. EMILIO PARMEGIANI

Construindo Aplicações com ASP.NET MVC 2.0 Aula 01 Luiz Alberto Ferreira Gomes. Ciência da Computação da PUC Minas

ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA

Java Enterprise Edition. by Antonio Rodrigues Carvalho Neto

Framework.NET, Microsoft Visual C# 2010 Express e Elementos da Linguagem C#

6127. Redes comunicação de dados. 2014/2015. Acesso à Internet.

Universidade Federal de Juiz de Fora Ciência da Computação Sistemas Distribuídos Professor Ciro Barbosa

Criação de Servlets Name Directory Build WAR JSP/Servlet frameworks Launch URL Package Class name Generate header comments

Descrição de um problema de integração: Sistema de vendas online

Minicurso Web Services com PHP

Departamento de Engenharia Electrotécnica e de Computadores Instituto Superior Técnico Universidade Técnica de Lisboa.

Internet e protocolos web. A Internet é uma rede descentralizada de recursos computacionais. Topologia tem de fornecer caminhos alternativos

Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva

ASP.NET Web Services. José Antônio da Cunha IFRN

Sistemas distribuídos. Prof. Emiliano Monteiro

Extracto on Line Aplicação Local Guia do Administrador

Web services. Um web service é qualquer software que está disponível através da Internet através de uma interface XML.

Sistemas Distribuídos

Disciplina: INF Programação I. 1 a aula prática Introdução ao ambiente do Microsoft Visual Studio 2010

Tutorial exe elearning XHTML editor (versão 1.0x)

Passo a Passo. WebSphere Message Broker. Fluxo como WebService

Solutions for Information Technologies. BIS-Navegador. Manual de Instalação para Microsoft SQL Server

Iniciar o Data Adapter Configuration Wizard. Toolbox Data Duplo clique em OleDbDataAdapter. Botão next na caixa de diálogo

Manual técnico. v /10

Grupo I [7v] 1. [1,0] Apresente o conteúdo do IDL relativo a este programa. Assuma PROGRAM=62015 e VERSION=1.

3 Classes e instanciação de objectos (em Java)

Universidade da Beira Interior. Sistemas Distribuídos /2015 Curso: Engª Informática. Folha 11. JAX-RS: Java API for RESTful Web Services

Web Services: Metodologias de Desenvolvimento Carlos J. Feijó Lopes José Carlos Ramalho Fevereiro de 2004

Ajax Asynchronous JavaScript and Xml

ZS Rest. Manual Profissional. Instalação do Software. v2011

Criando uma aplicação Web em C# usando o NHibernate

ANEXO V Edital nº 03508/2008

Trabalho Prático Nº1 Introdução ao C#.NET

Trabalhando com XML RENATO CORREIA DE MATOS

PROGRAMA DE MBA em Gestão e Engenharia do Produto. O Produto Internet e suas Aplicações

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate

COLIBRI Ambiente Colaborativo Multimédia MÓDULO MOODLE. Rui Ribeiro FCCN - Dezembro 2010

Introdução ao ASP.NET

Ferramentas Web, Web 2.0 e Software Livre em EVT

UFG - Instituto de Informática

Manual de Implantação do WebService de Aposentadoria, Pensão e Retificações.

Editor Eclipse para Programas F

Transcrição:

Web Service em.net 1 Criação de um Web Services em.net 1. Criar um novo Web Site com template ASP.NET Web Service, de acordo com a figura seguinte. O Visual studio cria um directório com os ficheiros indicados 2. A implementação do serviço é realizada no ficheiro Service.cs [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class Service : System.Web.Services.WebService public Service () }

Web Service em.net 2 3. Alterar o nome do ficheiro Service.asmx e Service.cs para DemoService.asmx e DemoService.asmx usando o rename no Solution Explorer e alterar o nome da classe para DemoService public class DemoService : System.Web.Services.WebService public DemoService()... } O ficheiro.asmx tem a directiva WebService e contém uma referência para a classe que implementa o serviço. <%@ WebService Language="C#" CodeBehind="~/App_Code/DemoService.cs" Class="DemoService" %> 4. Criar na classe um método CalculaDias que recebe uma data e devolve um long com o número de dias que passaram até ao dia de hoje. [WebMethod] public long CalculaDias(DateTime dt) System.TimeSpan diff=datetime.now.subtract(dt); long dias=(long) diff.totaldays; return dias; } Este método deve ter o atributo [WebMethod] para ser exposto como um método do serviço Web e poder ser chamado por outra aplicação. 5. Utilizar o atributo [WebService] na classe que implementa o serviço, para alterar o namespace da classe que por omissão é http://tempuri.org/ [WebService(Namespace = "dei.isep.demoservice")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class DemoService : System.Web.Services.WebService... 6. Compilar o código 7. Testar o serviço implementado

Web Service em.net 3 O.Net permite testar o serviço fazendo View in Browser no Solution Explorer ou usando no Internet Explorer o url, caso o projecto não seja File System, http://localhost/datasservice/demoservice.asmx A página seguinte é apresentada: Esta página é criada pela framework.net e permite testar o serviço implementado. Se seguir o link CalculaDias será apresentada a página seguinte:

Web Service em.net 4 Se introduzir na caixa de texto uma data válida (ano/mês/dia) o serviço retornará um long resultado da chamada do método.

Web Service em.net 5 Criação de uma aplicação cliente do serviço 1. Acrescentar à solução um novo projecto do tipo ASP.NET Web Application, com o nome ClienteDatas. 2. Criar uma página aspx muito simples, tendo como objectivo invocar o serviço criado anteriormente Crie os controlos de acordo com a figura seguinte:

Web Service em.net 6 3. Ligação ao Web Service Para invocar o serviço é necessário acrescentar uma Web Reference ao projecto, utilizando no Solution Explorer a opção Add Web Reference. Usando a opção Web Services in this solution, seleccione o Web Service anteriormente implementado e carregue no botão Add Reference. O.Net acrescenta ao projecto um directório App_WebReferences que contém um ficheiro DemoService.wsdl responsável pela descrição do serviço.

Web Service em.net 7 Implemente o seguinte código no evento click do botão CalculaDias private void ChamarServiço_Click(object sender, System.EventArgs e) localhost.demoservice proxy = new localhost.demoservice(); DateTime dt = new DateTime(2004, 1, 1); long dias = proxy.calculadias(dt); Label1.Text=dias.ToString(); Label1.Visible=true; } Faça Build do projecto e em seguida View in Browser e deverá ter como resultado a seguinte página:

Web Service em.net 8 Framework.Net para Web Service A figura seguinte mostra o conjunto de eventos que acontecem quando é chamado um método de um serviço Web. Anatomy of an XML Web Service Lifetime -.NET Framework Developer's Guide 1. O cliente cria uma nova instância da classe proxy do serviço web. localhost.demoservice proxy=new localhost.demoservice();.. A classe proxy é criada pela platafoma.net através da descrição do serviço no ficheiro DemoService.wsdl. Esta classe está no ficheiro Reference.cs no directório Web References /.. /Reference.Map, onde é implementado o código responsável por chamar os métodos remotos do serviço A classe Proxy Extracto do Reference.cs public partial class DemoService : System.Web.Services.Protocols.SoapHttpClientProtocol private System.Threading.SendOrPostCallback CalculaDiasOperationCompleted; public DemoService() this.url = global::web_app_project.properties.settings. Default.web_app_project_localhost_DemoService;.. [System.Web.Services.Protocols.SoapDocumentMethodAttribute( dei.isep.demoservice/calculadias", RequestNamespace="dei.isep.demoservice", ResponseNamespace="dei.isep.demoservice",

Web Service em.net 9 Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wr apped)] public long CalculaDias(System.DateTime dt) object[] results = this.invoke("calculadias", new object[] dt}); return ((long)(results[0])); } 2. O cliente invoca um método da classe proxy long dias=proxy.calculadias(dt); 3. A plataforma no cliente formata (serialize) os argumentos do método numa mensagem XML/SOAP e envia a mensagem através da rede usando o protocolo HTTP para o computador onde reside o serviço Web. Exemplo de uma mensagem SOAP: POST /DatasService/DemoService.asmx HTTP/1.1 Host: localhost Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "dei.isep.demoservice/calculadias" <?xml version="1.0" encoding="utf-8"?> <soap:envelope xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns:xsd="http://www.w3.org/2001/xmlschema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:body> <CalculaDias xmlns="dei.isep.demoservice"> <dt>o valor do argumento</dt> </CalculaDias> </soap:body> </soap:envelope> O mapeamento é realizado usando o nome do método como elemento no XML - <CalculaDias> - e como sub-elementos os argumentos do método -<dt> Existem vários atributos para alterar o modo como este mapeamento é realizado 4. O serviço Web recebe a mensagem SOAP e deserialize o XML recebido. Cria uma instância da classe que implementa o serviço e invoca o método do serviço.

Web Service em.net 10 5. O serviço executa o código e serialize o resultado enviando uma mensagem de resposta para o cliente. HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Content-Length: length <?xml version="1.0" encoding="utf-8"?> <soap:envelope xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns:xsd="http://www.w3.org/2001/xmlschema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:body> <CalculaDiasResponse xmlns="dei.isep.demoservice"> <CalculaDiasResult> o valor do resultado </CalculaDiasResult> </CalculaDiasResponse> </soap:body> </soap:envelope> O mapeamento da resposta é realizado acrescentando ao nome do método a palavra Response - <CalculaDiasResponse>