Artigo Java Magazine 45 - Tire seus Applets do isolamento

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (1)  (0)

Integre applets a componentes web, usando JavaScript e DOM. Saiba como transformar os seus applets em componentes comunicáveis e como fazer a integração entre applets, funções JavaScript e componentes do DOM.

Esse artigo faz parte da revista Java Magazine edição 45. Clique aqui para ler todos os artigos desta edição

Tire seus Applets do Isolamento

Integre applets a componentes web, usando JavaScript e DOM

Saiba como transformar os seus applets em componentes comunicáveis e como fazer a integração entre applets, funções JavaScript e componentes do DOM

Vivemos em uma época em que a integração de tecnologias é fundamental. Não há mais espaço para isolamento. Um exemplo típico são os navegadores web. A quantidade de componentes desenvolvidos para eles fez com que agissem cada vez mais como “cola”, provendo um ambiente para que elementos muito diversos pudessem se comunicar e se integrar.

A utilização de applets em páginas web, em alguns casos é uma solução excelente. Por exemplo, se você precisa acessar um hardware específico no computador do usuário, como um leitor de smart cards, um applet é a solução. Nesse caso, seria mais interessante se o applet pudesse se comunicar com o restante da página web e preencher um formulário com os dados processados. A integração entre componentes da página e o applet também é vista nos conhecidos teclados numéricos dos sites bancários.

Veremos neste artigo como integrar applets Java a outros componentes de uma página web e como código JavaScript pode fazer chamadas a métodos de um applet; ou seja, demonstraremos a comunicação nas duas direções entre elementos web (acessando o modelo DOM) e applets.

Para desenvolver o exemplo, usaremos o IDE Eclipse com o WTP (Web Tools Project). No site do WTP (eclipse.org/webtools) existe uma versão do Eclipse com este plug-in incluso. Se você já tem o Eclipse instalado, pode também baixar e instalar somente o WTP do site de atualizações do Callisto. Todos os arquivos e códigos do exemplo estarão disponíveis no site da Java Magazine.

Um pouco de teoria

Para entender melhor os exemplos, precisamos inicialmente definir o conceito de DOM (Document Object Model). De forma sucinta, o DOM é uma estrutura hierárquica de componentes em uma página web que podem ser acessados e alterados. Todos os componentes dentro de uma página web (figuras, tabelas, textos, formulários etc.) fazem parte da estrutura DOM. Isso inclui os applets, pois estão inseridos nas páginas web. A Figura 1 ilustra o DOM de uma página HTML simples.

 

Figura 1. DOM de uma página HTML simples

 

Acesso aos componentes

Há várias maneiras de acessar os componentes do DOM. A mais tradicional é através de um identificador (ID). O código JavaScript a seguir acessa um componente do DOM que possui o ID “appletJM”:

 

<script>

    var meuApplet= document.getElementByID(‘appletJM’);

</script>

 

A definição de um identificador, normalmente se dá através do atributo id. Veja alguns exemplos de componentes com identificadores:

 

<applet id="appletJM" />

<table id=”tabela01” />

<img id=”minhaFigura” />

 

Agora, vamos explorar como um applet pode acessar os componentes do DOM. De início já temos um problema. Embora o applet seja inserido na página com um tag HTML, sua funcionalidade, como sabemos, é toda implementada por código Java (referenciado pelo tag). 

Para que o applet acesse o DOM ou funções JavaScript, usaremos uma API que estabelece este canal de comunicação. Tal suporte é dado pelas classes da API netscape.javascript, fornecida pela Netscape. O arquivo desta biblioteca acompanha a distribuição do Java Runtime Enviroment (JRE). É o plugin.jar, localizado dentro do diretório lib da instalação do JRE (um path típico, no JDK 6 para Windows, seria C:\Arquivos de programas\Java\jdk1.6.0\jre\lib).

A principal classe desta API, e a que usaremos no nosso exemplo, é a classe JSObject. Seguem alguns dos seus principais métodos:

·         JSObject.getWindow() – Retorna uma referência ao objeto window do JavaScript. Este objeto fornece informações sobre a janela atual do navegador. Por exemplo, para acessar o conteúdo da URL você usaria window.location.

·         JSObject.call(String, Object[]) Chama uma função JavaScript através de dois parâmetros; o primeiro é o nome da função e o segundo contém os seus argumentos. 

·         JSObject.eval(String) – Interpreta a expressão passada como código JavaScript. 

·         JSObject.setMember(String,Object[]) "

A exibição deste artigo foi interrompida :(
Este post está disponível para assinantes MVP

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?