Artigo Java Magazine 25 - A Prática dos Portlets

Artigo publicado pela Java Magazine.

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

 

 

Atenção: por essa edição ser muito antiga não há arquivo PDF para download.Os artigos dessa edição estão disponíveis somente através do formato HTML.

 

A Prática dos Portlets

Parte 1: Visão Geral, Criação e Execução

Conhecá e aprenda a criar Portlets, que podem transformar um site num “desktop virtual” com aplicações web modulares, integradas e altamente personalizadas

Há algum tempo já convivemos com portais web: sites que pretendem ser uma “âncora” ou um “ponto de acesso” para quem está entrando na rede (como UOL, Terra, Yahoo etc.). Em comum, esses sites agregam informações e serviços, de forma que a maior parte das operações que o usuário queira fazer possa ser realizada dentro do portal, ou pelo menos a partir dele. Como exemplo, partindo de uol.com.br o usuário pode verificar notícias, fazer compras, pesquisar arquivos de revistas, entrar em salas de bate-papo e muitas outras coisas – tudo com um único login de assinante.

A nova geração de portais avança esse conceito para a criação de “desktops virtuais”, disponibilizando aplicativos e informações para o usuário de maneira personalizada. Por exemplo:

§Em uma empresa podem existir vários aplicativos web disponibilizados na intranet. Em alguns casos, cada aplicativo necessita de um login próprio e é acessado por uma URL específica. Já num portal, todos os aplicativos estão alojados dentro da página principal, sendo normalmente organizados por abas e acessíveis a partir de um único login.

§Em um site bancário, cada cliente pode querer configurar sua página inicial (mostrada pelo site logo após o login) de acordo com as suas necessidades: um cliente pode escolher visualizar dados referentes às suas aplicações, e outro pode preferir informações sobre seu saldo atual e pagamentos agendados.

 

Dessa forma, podemos definir algumas características fundamentais a todos os portais:

§Login único – Uma vez que o usuário realiza o login no portal, ele passa a ter acesso a todos os aplicativos e conteúdos (notícias, boletins e informações em geral) disponíveis sem necessidade de logins adicionais.

§Personalização – Um portal disponibiliza um conjunto de aplicativos e conteúdos para seus usuários, porém cada usuário pode selecionar em quais destes está interessado e como deverão ser dispostos na tela.

§Gerenciamento – Um administrador pode facilmente criar e atualizar tanto os conteúdos quanto os aplicativos.

 

É necessário, portanto, uma API e um conceito (ou paradigma) para o desenvolvimento dos aplicativos que serão disponibilizados dentro de um portal. Em Java, essa API e esse conceito são conhecidos como Portlets, que são especificados através da JSR-168.

Como acontece com várias JSRs, cada fabricante incorpora nas suas implementações algumas funcionalidades adicionais que tornam o sistema incompatível com seus concorrentes. Aqui optei por utilizar somente as funcionalidades especificadas na JSR-168, garantindo que as informações descritas possam ser aplicadas a qualquer gerenciador de portais Java compatível com a especificação de Portlets, como o Jetspeed 2 da Apache (portals.apache.org/jetspeed-2), que é utilizado para os exemplos), uPortal, Liferay, Exo, entre outros (veja links).

O que são portlets?

Voltando ao exemplo do site bancário, cada aplicativo que o usuário opta por mostrar na sua página, como saldo, posição da carteira, pagamentos agendados etc., é chamado de Portlet. Mais precisamente, um portlet é um componente web Java gerenciado por um Portlet Container, responsável pela geração dinâmica de um fragmento de página.

Um Portlet Container é um componente do portal, responsável por gerenciar e invocar os portlets. O portal é responsável pelas tarefas de gerência e agregação dos fragmentos dos portlets e dos conteúdos “gerais”, como notícias, avisos e outras informações que são apresentadas na forma de fragmentos estáticos dentro da página e configuradas por ferramentas de gerência de conteúdo. Por exemplo, o Jetspeed e o uPortal (uportal.org) são portais, com ferramentas próprias de gerência e configuração de conteúdos; porém ambos utilizam o projeto Pluto (portals.apache.org/pluto) como Portlet Container.

A Figura 1 mostra um exemplo de página de portal com dois portlets: um para visualização de artigos (o exemplo apresentado adiante) e outro para visualização de sites externos, mostrando um pedaço da página do site da Java Magazine."

[...] continue lendo...

Artigos relacionados