De que se trata o artigo:

Primeiros passos com a tecnologia Java Web Start. Nesse artigo serão apresentadas vantagens que os responsáveis pela implantação de aplicações desktop podem ter ao automatizar essa tarefa. Ao longo do artigo desenvolveremos um aplicativo para exemplificar os principais assuntos abordados.


Para que serve:

Profissionais que trabalham com aplicações desktop sabem o quanto é trabalhoso implantá-las. A tecnologia Java Web Start serve para automatizar esse processo, e pode se tornar uma forte aliada dos profissionais responsáveis por ele.


Em que situação o tema é útil:

Quando um contrato se inicia, ou uma nova versão é publicada, é preciso implantar a aplicação desktop em cada máquina na qual ela será ou já é usada. Implantação, no contexto da tecnologia Java Web Start, significa instalação ou atualização de uma aplicação, e nesses momentos essa tecnologia tem grande utilidade.

Implantando aplicações com Java Web Start:

Instalação e atualização de aplicações desktop são atividades trabalhosas e geralmente exigem interferência dos profissionais de TI nos ambientes dos usuários. Muitas vezes é preciso configurar máquina por máquina, executar arquivos de instalação, criar atalhos na área de trabalho, etc. E quando se corrige um bug em uma aplicação utilizada por dezenas, centenas ou mais usuários, como atualizar a versão em tantas máquinas? Nesse contexto surge como alternativa a tecnologia Java Web Start, que permite implantar aplicações automaticamente, a partir de uma rede com acesso a um servidor HTTP.

No artigo serão apresentados os passos necessários para disponibilizar uma aplicação utilizando essa tecnologia. O foco deixa de ser o código Java e se volta para outros temas ligados à Java Web Start, como o JNLP e a assinatura digital de arquivos JAR. Já que o artigo trata de automatização de tarefas, será também apresentada, brevemente, a ferramenta Apache Ant, forte aliada dos profissionais responsáveis pelo build de aplicações Java.

Quem trabalha com aplicações desktop sabe quanto tempo é gasto ao instalar versões para os clientes. No momento da primeira instalação geralmente é preciso configurar máquina por máquina, verificar se a versão da JVM instalada é compatível com a exigida pela aplicação, realizar algum download, criar atalhos na área de trabalho e menu Iniciar, executar arquivos de instalação, etc. Algum tempo depois da instalação, atualizações corretivas ou evolutivas podem ser necessárias. Imagine a seguinte situação: após alguns dias de operação descobre-se um erro grave na versão implantada. O código com erro é identificado e corrigido pela equipe de desenvolvimento e uma nova versão, corrigindo-o, é disponibilizada. As versões instaladas para os usuários precisam ser atualizadas com urgência. Nesse momento surgem algumas dúvidas. O que fazer para atualizar todas as versões instaladas? Algum cliente deve ser priorizado? E empresas ou órgãos públicos que disponibilizam suas aplicações para download via internet, como fazer para manter as versões de usuários em um município, estado, país ou mesmo no mundo todo, atualizadas? Enfim, essas questões fazem parte do dia-a-dia de quem trabalha com aplicações desktop, e felizmente existe tecnologia que pode ajudar a resolver a maioria delas de forma rápida e prática.

Para facilitar esse trabalho, a plataforma Java SE apresenta a tecnologia Java Web Start. Com ela é possível instalar e atualizar as aplicações sem a interferência direta de um profissional de TI em cada máquina onde a aplicação é utilizada. Ao invés de configurar a aplicação máquina por máquina, basta disponibilizá-la em um servidor HTTP ao qual as estações tenham acesso. Com acesso ao servidor, os próprios usuários terão condições de instalar ou atualizar aplicações, automaticamente, ao clicar em um link ou simplesmente abrir uma aplicação já instalada via Java Web Start.

Nesse artigo será apresentada essa tecnologia, os requisitos para utilizá-la e configurações necessárias para disponibilizar aplicações. Apresentaremos também tópicos diretamente relacionados a seu uso, como assinatura digital de arquivos JAR e configuração de um servidor HTTP. O leitor não encontrará grande volume de código Java, mas utilizaremos uma aplicação para exemplificar as ferramentas apresentadas, desde a primeira linha de código até uma atualização de versão via Java Web Start.

Resumo da tecnologia

Primeiramente, vejamos a tecnologia sob o ponto de vista dos usuários. Um JRE instalado é o requisito mínimo exigido de qualquer máquina que venha a executar uma aplicação Java. Felizmente, esse é também o único requisito exigido para as máquinas nas quais serão implantadas aplicações via Java Web Start. Isso porque essa tecnologia é parte integrante dos JREs mais recentes, sendo instalada junto com eles e sem exigência de nenhuma configuração ou download adicional. O usuário também não precisa realizar nenhuma interferência ou configuração para rodar as aplicações. É preciso apenas fazer o download das mesmas e confirmar se deseja receber atualizações quando elas estiverem disponíveis, como veremos adiante. Sendo assim, o uso da Java Web Start é quase transparente para os usuários dos sistemas.

Agora vejamos como é a utilização da tecnologia para quem disponibiliza aplicações. Elas precisam ser disponibilizadas em um servidor HTTP e serão baixadas nas máquinas dos usuários no momento da instalação. Cabe à pessoa ou equipe que as disponibiliza informar aos usuários o endereço para acesso. No servidor, além dos arquivos JAR que compõem aplicação, devem estar disponíveis imagens como ícones e JPEGs. São imagens utilizadas para a criação de atalhos e exibição enquanto as aplicações forem carregadas antes de cada execução (Splash Screen). A especificação da tecnologia exige que essas imagens sejam referenciadas por URLs HTTP.

O leitor deve perceber que até aqui não há nada de diferente de aplicações convencionais, disponíveis para download a partir de um site. E está correto. O que começa a diferenciar aplicações implantadas por Java Web Start das convencionais são arquivos que também precisam estar disponíveis no servidor, além dos citados anteriormente: os arquivos de configuração do JNLP (sigla para o nome em Inglês do ...

Quer ler esse conteúdo completo? Tenha acesso completo