Web Services na plataforma.net



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

Criação de um Web Services em.net

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

UNIVERSIDADE. Sistemas Distribuídos

UFG - Instituto de Informática

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

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

Web Services. Autor: Rômulo Rosa Furtado

18/04/2006 Micropagamento F2b Web Services Web rev 00

Serviços Web: Arquitetura

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

Microsoft.NET. Desenvolvimento Baseado em Componentes

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

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

MADALENA PEREIRA DA SILVA SLA Sociedade Lageana de Educação DCET Departamento de Ciências Exatas e Tecnológica

3 Serviços na Web (Web services)

Web Services. Integração de aplicações na Web. Sistemas Distribuídos

Programando em PHP. Conceitos Básicos

Manual de Integração WebService

Scriptlets e Formulários

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

Integração de sistemas utilizando Web Services do tipo REST

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

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

Sistemas Distribuídos

Adriano Reine Bueno Rafael Barros Silva

Microsoft Access XP Módulo Um

PROGRAMAÇÃO SERVIDOR WEBSERVICES EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

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

World Wide Web e Aplicações

Noções de. Microsoft SQL Server. Microsoft SQL Server

Desenvolvimento de aplicações web com JSP

Programação Cliente em Sistemas Web

Web Services. (Introdução)

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

Introdução a Web Services

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

Grupo I [6v] Considere o seguinte extracto de um programa de definição de uma calculadora apenas com a função soma de dois valores reais

Kassius Vargas Prestes

Microsoft Office Outlook Web Access ABYARAIMOVEIS.COM.BR

1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2.

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

Service Oriented Architecture SOA

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

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

SISTEMAS DISTRIBUIDOS

02 - Usando o SiteMaster - Informações importantes

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

Manual do Usuário. E-DOC Peticionamento Eletrônico TST

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

SOA Introdução. SOA Visão Departamental das Organizações

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

Serviços Web: Introdução

EAI Manual do Administrador

Procedimentos para Reinstalação do Sisloc

A interface do Microsoft Visual Studio 2005

Lista de Revisão. 3. Analise a afirmativa a seguir como verdadeira ou falsa e justifique.

Guia de Integração para Transferência

Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho

TCEnet. Manual Técnico. Responsável Operacional das Entidades

Configurando o DDNS Management System

Projeto SNGPC para Farmácias e Drogarias

Manual de Operação do Sistema de Tickets Support Suite

Orientação a Objetos

GUIA RÁPIDO DE UTILIZAÇÃO DO PORTAL DO AFRAFEP SAÚDE

Aplicação Prática de Lua para Web

Manual do Visualizador NF e KEY BEST

Tutorial de Integração HTML

Manual Integra S_Line

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS

3 SCS: Sistema de Componentes de Software

Gerador de Web Services para cadeias de tranformações de documentos XML

Investigando Sistemas de Informação. Crafty Syntax Live Help

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO

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

Manual de Utilização Central de Serviços

BANCO DE DADOS CONTEÚDO INFORMÁTICA. Prof.: MARCIO HOLLWEG BANCO DE DADOS SGBD TABELA CONCEITOS BÁSICOS


Conteúdo Dinâmico. Introdução. Interação Browser x Servidor Web. Interação Browser x Servidor Web

Orientação a Objetos

INTRODUÇÃO À TECNOLOGIA SERVLETS

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

CURSO DE PROGRAMAÇÃO EM JAVA

Curso de Aprendizado Industrial Desenvolvedor WEB

Laboratório de Computação VI JAVA IDL. Fabricio Aparecido Breve

Universidade da Beira Interior

USO GERAL DOS PROTOCOLOS SMTP, FTP, TCP, UDP E IP

Unidade 14: Web Services Prof. Daniel Caetano

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

Material de apoio a aulas de Desenvolvimento Web. Tutorial Java WEB JSP & HTML & CSS & CLASSE & OBJETOS. AAS -

Interfaces de Serviço na Prática. Luciano Oliveira Sr. Instructor, Consultant Global Field Services

Manual de Utilização do GLPI

MANUAL DO ANIMAIL Terti Software

Sumário. Apresentação O que é o Centro de Gerenciamento de Serviços (CGS) NTI? Terminologia Status do seu chamado Utilização do Portal Web

Versão /10. Xerox ColorQube 9301/9302/9303 Serviços de Internet

Transcrição:

Web Services na plataforma.net Jackson Gomes de Souza 1 1 Curso de Sistemas de Informação Centro Universitário Luterano de Palmas (CEULP/ULBRA) Caixa Postal 160 77054-970 Palmas TO Brasil jgomes@ulbra-to.br Abstract. This paper presents the.net framework Web Services technology, by Microsoft, e, specifically, it s utilization in the ASP.NET Internet programming model; there are demonstrated the Web Services characteristics and the related concepts, as SOAP and XML-RPC. Also, it presents an example of utilization of a Web Service inside a client application. Resumo. Este artigo apresenta a tecnologia de Web Services para a plataforma.net, da Microsoft, e, em específico, sua utilização com o modelo de programação para a Internet ASP.NET; são demonstradas as características de Web Services e os conceitos relacionados, como SOAP e XML-RPC. Ainda, apresenta um exemplo de utilização de um Web Service em uma aplicação cliente. 1. Introdução: O Web Services Model A definição mais básica para Web Services é a de uma aplicação que é acessível por programas através de protocolos web de uma maneira independente de plataforma [KALANI et. al. 2002] Esta definição apresenta elementos importantes que valem a pena ser detalhados: a) aplicação acessada por programas através de protocolos web : esta definição não é antiga, pois várias arquiteturas já prometiam e possibilizavam a realizam de execuções de métodos remotos através da Internet (como CORBA e DCOM). Além disso, o uso do protocolo HTTP, como padrão para transmissão de dados pela Internet, pode permitir a comunicação entre servidores (e entre clientes e sevidores) mesmo através de mecanismos de segurança de rede como firewalls. b) independente de plataforma : aqui entra a parte mais importante da criação de Web Services e já é bom trabalhar com o termo XML Web Services por causa da natureza da troca de mensagens entre aplicativos. A linguagem XML é utilizada para manter um padrão de forma de comunicação (troca de mensagens) entre as aplicações, ou seja, para a execução de métodos remotos (Remote Procedure Call RPC). De fato, o protocolo SOAP, sobre o qual XML Web Services se baseia, parte da definição de um projeto inicial chamado XML-RPC (chamada de procedimento remoto XML), criado por volta de 1998 por David Winer; na sua criação, ele foi definido como o básico sobre como XML poderia ser usada para descrever as informações da biblioteca de tipo de uma maneira neutra frente ao sistema operacional, que poderia tornar possível às tecnologias de componentes, então incompatíveis, falar umas com as outras pela Internet [AMUNDSEN e LITWIN 2002].

É essa característica de independência de sistema operacional (ou, de plataforma) que torna XML Web Services uma arquitetura tão interessante para a comunicação entre aplicações que são desenvolvidas em linguagens e plataformas diferentes. Em 1999 era criado o protocolo SOAP (Simple Objet Access Protocol) como resultado de uma solicitação de um consórcio liderado pela Microsoft, IBM e Sun para a W3C. 2. O protocolo SOAP O SOAP é um formato de mensagens baseado em XML, usado para passar informações entre duas localidades ou extremidades. As informações são armazenadas em um tipo de envelope [AMUNDSEN e LITWIN, 2002]. Este conjunto de elementos XML (um documento XML) realiza a tarefa de descrever as formas usadas para a transmissão de mensagens e a biblioteca de tipos. A Figura 1 ilustra os procedimentos realizados para troca de mensagens, utilizando SOAP, entre dois servidores (A e B). Figura 1. Modelo de estrutura da chamada de métodos entre servidores Os elementos do mecanismo de troca de mensagens apresentado pela Figura 1 podem ser explicados da seguinte maneira: 1) Servidor A envia solicitação SOAP ao servidor B para receber informações da biblioteca de tipos 2) Servidor B envia de volta a mensagem SOAP com a biblioteca de tipo 3) Servidor A envia envelope SOAP com o método que será chamado 4) Servidor B executa o método e envia de volta o resultado em um envelope SOAP 2.1. A Linguagem de Descrição de Web Service (WSDL) Para que os servidores consigam se comunicar, é necessário que eles entendam o mesmo vocabulário. Os métodos (e seus argumentos) e os tipos precisam ser entendidos por ambas as partes. Para isso existe a Web Services Description Language (WSDL), que disponibiliza as informações necessárias para compor as solicitações e as respostas SOAP [AMUNDSEN e LITWIN 2002]. A Figura 2 apresenta um exemplo de mensagem WSDL para o serviço Calculadora onde são descritos os tipos e a forma de comunicação a ser estabelecida com um serviço que tem um método ( Soma ) que realiza a soma de dois números reais.

<?xml version="1.0" encoding="utf-8"?> <definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/xmlschema"> <types> <s:schema elementformdefault="qualified" targetnamespace="http://tempuri.org/"> <s:element name="soma"> <s:complextype> <s:sequence> <s:element minoccurs="1" maxoccurs="1" name="a" type="s:float" /> <s:element minoccurs="1" maxoccurs="1" name="b" type="s:float" /> </s:sequence> </s:complextype> </s:element> <s:element name="somaresponse"> <s:complextype> <s:sequence> <s:element minoccurs="1" maxoccurs="1" name="somaresult" type="s:float" /> </s:sequence> </s:complextype> </s:element> </s:schema> </types> <message name="somasoapin"> <part name="parameters" element="s0:soma" /> </message> <message name="somasoapout"> <part name="parameters" element="s0:somaresponse" /> </message> <service name="calculadora"> <port name="calculadorasoap" binding="s0:calculadorasoap"> <soap:address location="http://localhost/webservices/calculadora.asmx" /> </port> </service> </definitions> Figura 2. Exemplo de trecho de mensagem WSDL para o serviço Calculadora Na Figura 2, o elemento <s:element name="soma"> contém uma série de elementos <s:element> que definem os tipos de dados dos parâmetros do método Soma. Os elementos <message name="somasoapin"> e <message name="somasoapout"> representam, respectivamente, as mensagens utilizadas para solicitação e envio de resposta. 2.2. A mensagem SOAP de solicitação Assim, que a máquina solicitante recebe a mensagem WSDL da descrição do serviço, já é possível compor uma mensagem SOAP de solicitação, pedindo ao servidor para executar um

determinado método e retornar algum resultado. A Figura 3 apresenta um exemplo de mensagem de solicitação que poderia ser utilizada para chamar o método Soma, passandose os parâmetros 3.5 e 6.5, do serviço Calculadora. <?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> <Soma xmlns="http://tempuri.org/"> <a>3,5</a> <b>6,5</b> </Soma> </soap:body> </soap:envelope> Figura 3. Exemplo de mensagem SOAP de solicitação do método Soma do serviço Calculadora Na Figura 3, a mensagem inclui um elemento <soap:envelope>, que define um esquema para informações que estarão presentes no corpo da solicitação e um elemento <soap:body>, que é o corpo da mensagem de solicitação (representada pelo elemento <Soma>, descrito pela WSDL (Figura 2) pelo elemento <s:element name="soma">. 2.3. A mensagem SOAP de resposta Após uma mensagem de solicitação, devidamente formatada, ser recebida pelo servidor, a mensagem de resposta é devolvida, contendo o resultado da execução do método. A Figura 4 apresenta um exemplo de mensagem de resposta a uma solicitação de execução do método Soma do serviço Calculadora. <?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> <SomaResponse xmlns="http://tempuri.org/"> <SomaResult>10</SomaResult> </SomaResponse> </soap:body> </soap:envelope> Figura 4. Exemplo de mensagem SOAP de resposta à chamada do método Soma do serviço Calculadora Na Figura 4, no corpo da mensagem, está contido o elemento <SomaResponse> que contém a resposta à chamada do método Soma e está descrito na WSDL (Figura 2) pelo elemento <s:element name="somaresponse">, neste exemplo, contém o elemento <SomaResult> com valor 10.

Pelos exemplos das Figuras 2, 3 e 4, é possível perceber a relação entre as mensagens de solicitação e resposta e como os elementos enviados são disponibilizados pela WSDL. 3. Criação e publicação de ASP.NET Web Services Há várias maneiras de consumir web services. Já que são disponibilizados via rede, através do protocolo HTTP, qualquer cliente que consiga acessar recursos de rede (como TC`P/IP) poderá realizar uma interação com o Web Service [AMUNDSEN e LITWIN 2002]. Embora isso seja possível, não é a solução mais prática e viável, porque o programador necessitaria de um grande conhecimento das mensagens SOAP e de processamento de documentos XML (que, no caso, seriam retornados como strings e deveriam ser analisados para que os dados de interesse pudessem ser recuperados). ASP.NET fornece um mecanismo para acesso aos Web Service que diminui consideravelmente a necessidade de programação. Existem várias bibliotecas de classes que entendem o protocolo SOAP. Em ASP.NET, disponibilizar um Web Service está relacionado com a criação de um arquivo Active Server Method Extension (.asmx) que é publicado em um servidor web. ASP.NET cuidará do envio de mensagens no formato SOAP e produzirá documentos que descreverão o web service e os métodos possíveis de serem chamados [AMUNDSEN e LITWIN 2002]. A Figura 5 apresenta o código do Web Service Calculadora, que será elucidado posteriormente. 1: <%@ WebService Language="C#" Class="Calculadora" %> 2: 3: using System; 4: using System.Web.Services; 5: 6: public class Calculadora : WebService { 7: [WebMethod] public float Soma(float a, float b){ 8: return(a+b); 9: } 10: } Figura 5. Código, em linguagem C#, para o Web Service Calculadora Na Figura 5, linha 1, está a descrição inicial do Web Service. As palavras chave WebService, Language e Class definem, respectivamente, que o código representa um Web Service, que a linguagem a ser utilizada é a linguagem C# e que o nome da classe que descreve o serviço (e que será tornada de domínio público) é Calculadora. Nas linhas 3 e 4 são importados os espaços de nome (bibliotecas de classes) que serão utilizados. Estes espaços de nomes, em específico, contém as classes necessárias para a criação de Web Services. Na linha 6, é criada a definição da classe Calculadora e que ela herda da classe WebService.

Na linha 7, é criada a definição do método Soma, e a palavra-chave [WebMethod] define que este método será disponibilizado publicamente (como um método possível de ser executado). Podem existir métodos auxiliares, não marcados por esta palavrachave, neste caso, tais métodos só serão acessíveis internamente, pela classe que os contém (neste caso, Calculadora ). A Figura 6 apresenta como a descrição do Web Service é visualizado pelo browser. A Figura 7 apresenta o formulário HTML criado para realizar a interação com o Web Service (envio de mensagens de solicitação). Figura 6. Visualização do Web Service no browser O ASP.NET cria automaticamente o documento HTML das Figura 6 e 7. Na Figura 6, ao clicar sobre o link Soma, é possível executar o método; ao clicar sobre o link Service Description é possível visualizar o documento WSDL para o Web Service Calculadora (Figura 2). Na Figura 7, o usuário deve preencher os campos dos parâmetros do método Soma ( a e b ) e clicar sobre o botão Invoke ; ao clicar sobre o botão, uma mensagem de resposta, no formato XML, é enviada (Figura 8).

Figura 7. Interface para comunicação e execução do método Soma Figura 8. Documento XML enviado ao cliente como resposta à chamada (invocação) do método Soma (para a=3,5 e b=6,5) 3.1. Utilização do Web Service Calculadora Dentre as formas para utilização de Web Services estão: formulários HTML e a criação de classes proxy através do utilitário wsdl.exe (que acompanha o Microsoft.NET Framework SDK). Para utilizar formulários HTML, a tag form deve como valor para o atributo action a url para o recurso.asmx e o método a ser executado, como apresenta a Figura 9. <html> <body> <h1>utilização de Web Services através de formulários</h1> <form action="calculadora.asmx/soma" method="post"> a: <input type="text" name="a"><br> b: <input type="text" name="b"><br> <input type="submit" value="calcular">

</form> </html> Figura 9. Utilização de Web Services através de formulários HTML Quando o formulário da Figura 9 for enviado (o usuário clicar sobre o botão Calcular ) uma nova janela será aberta e a mesma tem a mesma aparência da apresentada pela Figura 8. O utilitário wsdl.exe pode acessar um documento.asmx, verificar seu WSDL e criar automaticamente uma classe proxy, que poderá ser acessada por qualquer aplicativo (web ou desktop) criado sobre a plataforma.net. A Figura 10 apresenta um exemplo de utilização do wsdl.exe de uma classe para o Web Service Calculadora, a Figura 11 apresenta o resultado da execução do comando e a Figura 12 apresenta o código, em linguagem C#, gerado automaticamente para o arquivo Calculadora.cs. wsdl http://localhost/webservices/calculadora.asmx /l:cs /o:calculadora.cs Figura 10. Geração da classe proxy para o Web Service Calculadora Figura 11. Resultado da execução do wsdl.exe para geração do arquivo CalculadoraProxy.cs //-------------------------------------------------------------------- //<autogenerated> //This code was generated by a tool. //Runtime Version: 1.1.4322.573 //Changes to this file may cause incorrect behavior and will be lost //if the code is regenerated. // </autogenerated> //-------------------------------------------------------------------- // // This source code was auto-generated by wsdl, Version=1.1.4322.573. // using System.Diagnostics; using System.Xml.Serialization; using System; using System.Web.Services.Protocols;

using System.ComponentModel; using System.Web.Services; /// <remarks/> [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] [System.Web.Services.WebServiceBindingAttribute(Name="CalculadoraSoap", Namespace="http://tempuri.org/")] public class Calculadora : System.Web.Services.Protocols.SoapHttpClientProtocol { /// <remarks/> public Calculadora() { this.url = "http://localhost/webservices/calculadora.asmx"; } /// <remarks/> [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tem puri.org/soma", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrappe d)] public System.Single Soma(System.Single a, System.Single b) { object[] results = this.invoke("soma", new object[] { a, b}); return ((System.Single)(results[0])); } /// <remarks/> public System.IAsyncResult BeginSoma(System.Single a, System.Single b, System.AsyncCallback callback, object asyncstate) { return this.begininvoke("soma", new object[] { a, b}, callback, asyncstate); } } /// <remarks/> public System.Single EndSoma(System.IAsyncResult asyncresult) { object[] results = this.endinvoke(asyncresult); return ((System.Single)(results[0])); } Figura 12. Código, em linguagem C#, para a classe proxy Calculadora (CalculadoraProxy.cs) Embora o código da Figura 12 se pareça confuso e difícil de se entender, o programador não precisa analisá-lo, ou, mesmo, entendê-lo. Como o código é gerado automaticamente pelo utilitário wsdl.exe o mesmo é criado exatamente de acordo com as classes da plataforma.net necessárias para prover acesso ao recurso através da Internet.

Após a geração do arquivo CalculadoraProxy.cs, este tem que ser compilado, para que possa ser gerada um arquivo.dll que conterá a definição de tipos para propiciar a utilização da classe Calculadora em uma aplicação cliente. Para gerar o arquivo.dll, o seguinte comando deve ser utilizado: csc /t:library CalculadoraProxy.cs Após a geração do arquivo.dll, a classe proxy está pronta para ser utilizada por outra aplicação. A Figura 13 apresenta o código, em linguagem C#, que utiliza a classe proxy Calculadora em um aplicativo de linha de comando para consumir o Web Service Calculadora. O arquivo deve ser compilado realizando uma referência à dll: csc /r:calculadoraproxy.dll CalculadoraConsole.cs 1: using System; 2: class CalculadoraConsole { 3: public static void Main(String[] args){ 4: Calculadora calculadora = new Calculadora(); 5: float a = 3.5f; 6: float b = 6.5f; 7: Console.WriteLine("O valor da soma é: {0}",calculadora.Soma(a,b).ToString()); 8: } 9: } Figura 13. Código, em linguagem C#, para o arquivo CalculadoraConsole.cs: um cliente que utiliza a classe proxy Calculadora para consumir o Web Service Calculadora Na Figura 13, na linha 3, é feita a instanciação do objeto Calculadora. As linhas 5 e 6 definem as variáveis que serão utilizadas na passagem de parâmetros para o método Soma (linha 7). 4. Considerações finais XML Web Services apresentam uma nova maneira de comunicação (envio de dados e mensagens) entre clientes e servidores e entre servidores e servidores. Explorando as potencialidades deste ambiente, aplicações cliente podem consultar bancos de dados públicos, apresentar informações de maneira específica (voltada para o contexto de sua própria aplicação) e, ainda, fornecer uma interface para outros clientes. Logo, uma aplicação não se torna apenas cliente, mas, dependendo da relação na qual está inserida, também pode se tornar uma aplicação servidora. Os Web Services ainda dispõem de outras características importantes para o meio comercial, como:?? Segurança: a aplicação pode solicitar autenticação do usuário para que o Web Service possa ser devidamente acessado.

?? Gerenciamento de sessão: a aplicação pode manter o estado da aplicação para o usuário, facilitando, assim, a interação com o mesmo.?? Gerenciamento de transação: provavelmente, um dos recursos mais utilizados pelo meio comercial, principalmente porque é um mecanismo que consegue gerenciar a execução de métodos e verificar a ocorrência de falha ou sucesso. A publicação dos serviços na Internet se torna uma tarefa simplificada através da utilização de ASP.NET. Com isso, o ambiente de execução dos Web Services pode crescer exponencialmente à medida que novas aplicações (servidoras e clientes) surgem e são disponibilizadas na Internet. Este trabalho aprestou as características iniciais para o desenvolvimento e utilização de XML Web Services na plataforma.net. Outras potencialidades podem ser exploradas, não se atendo, é claro ao que foi apresentado aqui, como a utilização de classes personalizadas (no resultado da execução de métodos) e acesso a dados utilizando classes DataSet. 6. Referências Bibliográficas AMUNDSEN, Michael e LITWIN, Paul. ASP.NET para desenvolvedores de Web Sites. 319-360 p. Rio de Janeiro: Editora Ciência Moderna Ltda., 2002. KALANI, Amit et. al. ASP.NET 1.0 with C#. Namespace Reference. Wrox, 2002.