Marlos Carmo Sexta-feira, 23 de julho de 2004

Flash com WebServices

Neste artigo vamos aprender um pouco sobre o conceito de Web Services e logo em seguida teremos uma visão de Web Service na prática utilizando o Flash e o mais interessante é que vamos comunicar com um Web Service sem utilizar nenhuma linha de código.

Um Web Service é uma tecnologia que aproveita a flexibilidade da internet para realizar negócios na web, tornando assim possível a comunicação transparente entre aplicações distintas, resumindo, são serviços web.

Se pensarmos em uma utilização prática do uso do Web Services, torna-se mais fácil o entendimento. Imagine que você precise criar um tradutor para utilizar em sua aplicação, seja ela web ou não, o que você faria? Desenvolveria uma aplicação de um tradutor? Contrataria o serviço de uma empresa já existente para fazer esta aplicação? Não seria muito mais fácil fazer uma comunicação entre sua aplicação e de uma empresa especializada que já possui este serviço. Os Web Services foram criados justamente para suprir esta falta de comunicação entre as aplicações.

Com os Web Services mesmo que as aplicações possuam linguagens diferentes, plataformas diferentes ou conceitos diferentes, podem conversar entre si na mesma língua, pois os Web Services baseiam num conjunto de padrões abertos, incluindo XML, SOAP, WSDL e UDDI, controlados pelo World Wide Web Consortium (W3C).

Funcionamento de um Web Service

Consumindo Web Service em Flash: Criando um tradutor

Agora vamos colocar o conceito que aprendemos em prática.

Atualmente já existem vários serviços espalhados pela web, como tradutores, conversores de moeda, previsão de tempo e vários outros serviços na maioria gratuitos para que você possa utilizá-los em qualquer tipo de aplicação.

O Flash MX Professional 2004, possui facilidades para consumir dados de um Web Service, não precisando de saber programar nenhuma linha de código. Para isso iremos utilizar o WebServiceConnector, componente presente somente na versão Professional do Flash.

Componentes Flash MX Professional 2004

Agora vamos a nossa aplicação

- Crie um novo documento

- Arraste o componente WebServiceConnector para seu Stage

Arraste o componente para o Stage

- Selecione o componente e mude as seguintes propriedades

WSDLURL

Nesta propriedade você colocará o endereço do WSDL do webservice utilizado, no nosso caso utilizaremos o http://www.xmethods.net/sd/2001/BabelFishService.wsdl

Operation

Na propriedade Operation você selecionará a operação que será executada pelo Web Service, no nosso caso só teremos uma, a BabelFish.

Propriedades do WebServiceConnector

- Agora instancie seu componente como wsTradutor.

Instancie seu WebServiceConnector

- Agora teremos que arrastar para o Stage, 4 componentes e instanciá-los de acordo com a palavra a sua frente na imagem abaixo.

Insira os componentes

- Selecione o ComboBox opção, e adicione os valores as seguintes propriedades:

data

pt_en
en_pt

values

Português para Inglês
Inglês para Português

Propriedades do ComboBox

- Selecione novamente o componente WebServiceConnector e abra o Painel Component Inspector, selecione a aba Bindings.

- Clique no botão + como na figura abaixo.

Clique no botão +

- Irá aparecer uma tela Add Binding, selecione o item -> translationmode : String e clique em OK.

Add Bindings

- Novamente no PainelComponent Inspector e na aba Bindings, selecione a opção params.translationmode e na caixa abaixo clique na propriedade bound to. Após o clique aparecerá uma tela e você deverá selecionar na caixa da esquerda a opção ComboBox, e na caixa da direita value : String e clique em OK.

Bound To translationmode

- Clique no + novamente, na janela Add Binding, selecione o item -> sourcedata : String e clique em OK.

- Mais uma vez no PainelComponent Inspector e na aba Bindings, selecione a opção params.sourcedata e na caixa abaixo clique na propriedade bound to. Após o clique aparecerá uma tela e você deverá selecionar na caixa da esquerda a opção TextInput, e na caixa da direita text : String e clique em OK.

Bound To sourcedata

- Clique no + novamente, na janela Add Binding, selecione o item <- results : String e clique em OK.

- Mais uma vez no PainelComponent Inspector e na aba Bindings, selecione a opção results e na caixa abaixo clique na propriedade bound to. Após o clique aparecerá uma tela e você deverá selecionar na caixa da esquerda a opção TextInput, e na caixa da direita text : String e clique em OK.

- Agora selecione o botão btnTraduzir e vá até o Painel Behaviors, clique no + e selecione Data >> Trigger Data Source e selecione o wsTradutor e clique em OK.

Pronto, agora é só rodar sua aplicação e seu tradutor está funcionando.

O arquivo deste tutorial pode ser encontrado no seguinte link:
http://www.mugmg.com.br/codigos/code_tradutor.zip