Você está na página 1de 23

Curso de Java com Flex

Integração Java x Flex

Prodata Informática
1 Dependências

• Java JDK 1.5.0.x

• Eclipse JEE 3.4.x

• Flex Builder 3.4.x

• Tomcat 6.x

Instalando o Tomcat:

Baixe o Tomcat 6.x

http://mirrors.uol.com.br/pub/apache/Tomcat/Tomcat-
6/v6.0.18/bin/apache-Tomcat-6.0.18.exe

Clique duas vezes sobre o arquivo. Deverá aparecer a seguinte tela. Clique
em next:

Clique em “I Agree”
Podemos definir se será instalado a documentação do Tomcat e alguns
exemplos. Clique em next.

Nesta tela configuramos o diretório onde o Tomcat será instalado.


Deixaremos o padrão. Clique em next.
Na tela a seguir, podemos configurar a porta padrão do Tomcat e uma
senha para o usuário admim. Não será necessário alterar algum dado.
Clique em next.
Informamos onde está o diretório de instalação do Java jre. Clique em next.

Agora nosso Tomcat está instalado. Clique em finish.


• PostgreSql 8.3.x

• Flash Player 9x

2 Criando e configurando nosso projeto Java Flex

2.1 Criando um novo projeto

Crie um novo projeto do tipo Dynamic Web Project. (Veja figura abaixo)
Informe o nome do projeto, e o Target Runtime. No nosso caso, o Tomcat 6. (Veja
figura abaixo)
Em Target Runtime, se estiver none, clique em New... Na tela que se abre,
selecione a opção Apache Tomcat v6.0 e clique em next.
Agora você deve informar o diretório de instalação do Tomcat e também o jdk
instalado em sua máquina.
Pronto, agora temos o Tomcat configurado. Clique em Finish. Agora selecione o
Target Runtime que acabamos de configurar e clique em next.

Na tela seguinte, altere a pasta src para src_java. Isso facilitará o entendimento
da estrutura do projeto. (Veja figura abaixo)
Agora precisamos transformar este projeto web em um projeto flex. Clique com o
lado direito do mouse sobre o projeto e selecione as opções Flex Project Nature e
Add Flex Project Nature. (Veja figura abaixo)
Após realizar o passo descrito acima, selecione J2EE na janela que irá se abrir,
desmarque as outras opções (veja figura abaixo) e clique em Next e
posteriormente em Finish.

Estamos quase acabando, mas ainda faltam algumas configurações. Clique


novamente com o botão direito sobre o projeto e selecione Propriedades. Depois
clique em Flex Builder Path e altere o valor do Output folder para WebContent
- neste diretório ficarão os arquivos gerados pelo flex como Html’s e SWF’s.
Selecione a guia Library Path e remova a pasta flex_libs. Esta não será mais
necessária
2.2 Integrando o BlazeDS ao projeto

O BlazeDS é um produto OpenSource (Licença LGPL v3) utilizado para fazer a


comunicação entre o Java e o Flex através do protocolo AMF.

Iremos configurar o BlazeDs da forma mais rápida possível, extraindo


(descompactando) o arquivo blazeds.jar e copiando a pasta WEB-INF para o nosso
projeto. Isso mesmo, você vai sobrescrever a pasta WEB-INF do projeto pela pasta
WEB-INF contida na biblioteca do blaze (.jar).

Verifique na figura abaixo como deve ficar a estrutura dos arquivos:


Note que o arquivo WEB.XML foi sobrescrito, portanto, já está com o BlazeDS
configurado.

Agora abra o arquivo web.xml e altere o valor do parâmetro welcome-file-list


conforme a figura abaixo.

<welcome-file-list>
<welcome-file>prodatajavaflex.html</welcome-file>
</welcome-file-list>

Isso fará com que o arquivo prodatajavaflex.html seja nossa página index
(página principal).

Devemos informar ao compilador do Flex que existe um servidor de AMF ativo.


Clique com o botão direito sobre o projeto, selecione Properties e depois selecione
Flex Compliler. Adicione a linha abaixo no campo Additional compiler
arguments e clique em ok.

-services "../WebContent/WEB-INF/flex/services-config.xml"

Verifique na figura abaixo o campo de argumentos adicionais para o compilador.


Provavelmente um erro será informado pelo Eclipse após realizamos o passo
descrito acima. Para resolvê-lo, clique com o botão direito sobre a mensagem de
erro e selecione a opção Recreate HTML Templates para resolver este problema.
(Veja figura abaixo)
Pronto! Nosso projeto está criado e configurado. Podemos começar a fazer o Hello
World Java Flex mais rápido do mundo.

3 Fazendo o "Hello World" mais rápido do mundo

Abra o arquivo prodatajavaflex.mxml e digite o seguinte código:

No diretório src_java crie a uma classe chamada HelloWorld dentro do seguinte


pacote: br.com.prodata.javaflex

Agora precisamos informar ao BlazeDS sobre a existência da classe que acabamos


de criar. Isso é feito através do remoting-config.xml. Acrescente um registro
nesse arquivo para a classe HelloWorld conforme a figura abaixo:
Repare que no arquivo prodatajavaflex.mxml o RemoteObject declarado
possui um destination. Esse destination deve ser igual a este que acabamos de
declarar no remoting-config.xml.

Para evitar problemas na execução do projeto, substitua o navegador web padrão


do Eclipse pelo Mozilla ou Internet Explorer. Para fazer isso, selecione o menu
Window do Eclipse e depois selecione a opção Properties. Selecione a guia
General e depois selecione Web Brownser, selecionando o navegador de sua
preferência. (Veja figura abaixo).

Para executar o projeto, clique com o botão direito sobre o projeto e selecione a
opção Run As e Run on Server.
Selecione o servidor Tomcat que irá executar nossa aplicação.
Após configurarmos o Tomcat, o Eclipse abrirá um navegador web com a página
principal do projeto. Digite um texto na caixa de texto e clique no botão “OK”.

Veja que o texto digitado foi produzido na classe Java que criamos!

4 Remote Object

Existem outras formas de se trabalhar com Remote Object.

4.1 Exemplo 1
Para o próximo exemplo crie um novo application chamado remotObject.mxml
com o seguinte código:
Crie um método na classe java chamado olá Mundo. (veja figura abaixo)

Execute a aplicação e verifique a mensagem vinda do java.

Agora vamos provocar uma exceção no método da classe java e verificar como
nossa aplicação se comportará. Altere o código do método conforme a figura
abaixo:
Repare que não será possível fazer a conversão da string “não é um número” para
um valor numérico válido, logo, será lançada uma exceção do tipo
NumberFormatException.

Note que ao lançar uma exceção em nossa classe, o retorno para o flex veio
através do método olaMundoFault.

4.2 Exemplo 2

Para o segundo exemplo crie um novo aplication chamado remoteObject2.mxml


com a seguinte estrutura:
Neste exemplo utilizaremos a mesma classe java criada anteriormente.

Execute o application e veja que o resultado foi o mesmo do exemplo anterior.


Porém, neste exemplo, criamos nosso remoteObject via ActionScript.

4.3 Exercícios

4.3.1 Exercício 1

Com base em no conhecimento adquirido até aqui, construa uma tela de cadastro
de contatos, contendo os seguintes campos: Nome, Endereço e Telefone.

- A tela deverá apresentar uma mensagem formatada com os dados fornecidos pelo
usuário.

- Verifique em sua classe java se todos os campos foram preenchidos. Caso algum
campo esteja vazio lance uma exceção solicitando o preenchimento do(s)
mesmo(s) e exiba esta mensagem no Flex.

Você também pode gostar