Web Service
Trabalho Universitário: Web Service. Pesquise 862.000+ trabalhos acadêmicosPor: rafaellferreira • 18/10/2014 • 4.422 Palavras (18 Páginas) • 679 Visualizações
Um sistema distribuído segundo a definição de Andrew Tanenbaum é uma “coleção de computadores independentes que se apresenta ao usuário como um sistema único e consistente", outra definição, de George Coulouris, diz: "coleção de computadores autônomos interligados através de uma rede de computadores e equipados com software que permita o compartilhamento dos recursos do sistema: hardware, software e dados".
Os sistemas são organizados, visando utilizar o maior número de maquinas possíveis, os protocolos ou canais de comunicação não podem conter nenhuma informação que não possa ser entendida pelas demais maquinas. Existem diversas formas e modelos de Sistemas Distribuídos, entre elas estão:
• Cliente/Servidor: O cliente manda um pedido para o servidor e o mesmo retorna a solicitação:
• Peer-to-peer (P2P): Caracterizada pela descentralização das funções na rede, onde cada um realiza tanto funções de servidor quanto de cliente:
• Objetos Distribuídos: Semelhantes ao “P2P”, mas com um Middleware (mediador) intermediando o processo de comunicação.
Neste projeto iremos demonstrar o conceito e a utilização de um sistema distribuído em formato cliente/servidor, onde será desenvolvido em uma plataforma JAVA um projeto para a realização de cálculos orçamentários referentes aos serviços propostos na criação da empresa realizada no tópico “5” (empreendedorismo).
Como mencionado, utilizaremos como arquitetura de desenvolvimento à plataforma JAVA, JAVA é o nome dado a um ambiente computacional, que permite desenvolver aplicativos utilizando qualquer uma das linguagens criadas para a plataforma, sendo a linguagem padrão a que leva seu próprio nome: Linguagem JAVA. Uma grande vantagem da plataforma é a de não estar presa a um único sistema operacional ou hardware, pois seus programas rodam através de uma maquina virtual que pode ser emulada em qualquer sistema que suporte a linguagem C++.
Qualquer usuário que tenha instalado um cliente Java poderá se beneficiar de seus aplicativos independente de sistema operacional ou plataforma de hardware, atualmente a SUN Microsystems, fabricante da plataforma disponibiliza diversas versões visando a compatibilidade com os mais distintos sistemas operacionais, tanto para desktops, servidores, portáteis como celulares, palm-tops, Ipod’s entre outros.
O universo Java é um vasto conjunto de tecnologias, composto por três plataformas principais que foram criadas para segmentos específicos de aplicações:
• Java SE (Standard Edition): É a base da plataforma, inclui o ambiente de execução das bibliotecas comuns;
• Java EE (Enterprise Edition): A edição voltada para o desenvolvimento de aplicações corporativas e para internet;
• Java ME (Micro Edition): A edição para o desenvolvimento de aplicações para dispositivos moveis e embarcados.
O nosso projeto visa à interação com o cliente pela internet, disponibilizando uma área onde ele possa escolher os serviços e efetuar a soma dos mesmos, para que seja possível essa interação iremos utilizar serviços da plataforma Java que integra sistemas e realiza a comunicação entre as aplicações. Essa solução Java denomina-se WEB SERVICE, com esta tecnologia é possível que aplicações desenvolvidas sejam compatíveis com sistemas diferentes. Toda e qualquer comunicação entre sistemas utilizando web service passa a ser dinâmica e principalmente segura, pois não há intervenção humana.
Os web services surgiram no final da década de 90, quando alguns fabricantes de middleware perceberam a necessidade de padronizar as implementações de SOA (Service-Oriented-Architecture) que estavam surgindo. Era fundamental para garantir a interoperabilidade de aplicações. Um web service é uma interface que descreve uma coleção de operações que são acessíveis pela rede através de mensagens XML padronizadas, a interface esconde os detalhes da execução do serviço, permitindo que seja usado independentemente da plataforma de hardware ou software e da linguagem em que esteja implementado, são componentes de softwares que são chamados a partir de outros aplicativos, são ‘páginas web’ para outros computadores e não para seres humanos como as páginas HTML tradicionais, é uma tecnologia desenvolvida para que uma outra aplicação o utilize independente de plataforma ou linguagem de programação, através de protocolos padronizados e com transações transparentes para o usuário.
Web Services utilizam XML como formato para troca de dados, e um conjunto de protocolos aceitos pelas indústrias e fabricantes de softwares para integrar as aplicações e sistemas, este conjunto de protocolos englobam web services como:
• Simple Object Acces Protocol (SOAP)
• Web Services Description Language (WSDL)
• Universal Description Discovery and Integration (UDDI)
O Web Services Description Language (WSDL) é uma linguagem baseada em XML utilizada para descrever web services funcionando como um contrato do serviço, para invocar um contrato fornecido por um web service precisa-se saber de antemão como as mensagens SOAP são estruturadas, qual protocolo será utilizado, o endereço do web service, o nome do contrato, parâmetros e todos os seus tipos.
Um documento WSDL descreve os serviços do Web Service, fornecendo uma documentação completa do serviço para que possíveis clientes possam utilizá-lo de forma automatizada, trazendo todas as informações que o cliente precisa saber para consumir o serviço. A WSDL apresenta a definição de um Web Service em duas partes. A primeira representa uma definição abstrata independentemente do protocolo de transporte de alto nível, enquanto a segunda representa uma descrição da ligação específica para o transporte na rede.
Foi projetada de modo que ela possa expressar associações com protocolos diferentes do SOAP, usando WSDL, um cliente pode localizar um serviço web e invocar qualquer das suas funções disponíveis publicamente. WSDL, portanto, representa um marco da arquitetura Web Services, porque fornece uma linguagem comum para descrever serviços e uma plataforma para integrá-los automaticamente.
WSDL contem os seguintes elementos:
• Interface: Descreve todas as informações publicas e funções disponíveis;
• Data type: Tipos de dados tanto para as mensagens de pedido como suas respostas;
•
...