Portlets no JCP: A evolução da arquitetura de portais corporativos em Java

A arquitetura de ferramentas de portais construídos sobre tecnologia Java EE se baseia em três componentes fundamentais, conforme descrito na figura 1 abaixo: o Portal que representa a interface onde vários compoenentes são agregados, o componente chamado Portlet e o Container onde os portlets executam. O portlet, nosso compoenente central é definido através de padrões abertos. Os fornecedores de ferramentas de portais trabalham juntos na definição destes padrões e concorrem no desenvolvimento de produtos criando implementações destes padrões.

Figura 1: Portal, portlet container, portlet API.

Antes da primeira especificação de portlets o JCP(*) rejeitou duas JSRs (**). A JSR 162: Portlet API e a JSR 167: JavaTM Portlet Specification.

A JSR 168: Portlet Specification foi a que definiu a versão 1.0 do padrão Java para Portlets e containers. Esta especificação, liderada pela IBM, ficou pronta em 27 de outubro de 2003. Ela definiu um conjunto de APIs englobando as áreas de agregação, personalização, apresentação e segurança de portais.

A implementação de referência para portlets é o projeto open-source Pluto do grupo Apache. O projeto Pluto não tem como objetivo ser uma ferramenta completa de portal corporativo. Apenas um container de portal implementado para ser compatível com a especificação. Ele fornece um portal simples, mas não fornece serviços importantes como single sign on, por exemplo.

A versão 2.0 de Portlets foi definida no JSR 286: Portlet Specification 2.0 também liderada pela IBM. Ela alinha a API de Portlets com J2EE 1.4, integra outras JSRs relevantes para portlets e inclui o padrão WSRP(***) 2.0 para interoperabilidade entre portlets remotos. Ela ficou pronta em 12 de Junho de 2008.

Atualmente existem duas JSRs em andamento relacionadas a Portlets. A primeira é a JSR 301: Portlet Bridge Specification for JavaServer Faces que define uma ponte (Bridge) para JSF. O objetivo é definir uma semântica para portlets JSR 168/JSR 286, fornecendo proxies para os artefatos JSF. A outra é a especificação JSR 329: Portlet 2.0 Bridge for JavaServerTM Faces 1.2 Specification. Ela tem o mesmo objetivo da anterior, mas para JSF versão 1.2. Estas duas são lideradas pela Oracle.

Outras especificações importantes para portais são as relacionadas à repositórios de gerenciamento de conteúdo. Sobre esse assunto temos a versão 1.0 definida pela JSR 170: Content Repository for JavaTM technology API concluída em 17 Junho de 2005. Ela teve como objetivo especificar uma API padrão para acesso a repositórios de conteúdo em Java independentes de implementação. A versão 2.0 será definida na JSR 283: Content Repository for JavaTM Technology API Version 2.0. Esta nova versão ainda em andamento tem como objetivo melhorias no gerenciamento, interoperabilidade, extensões para modelagem de conteúdos, protocolos remotos, linguagens de pesquisa, entre outras.

Diversas ferramentas implementam estes padrões, participe da discussão Ferramentas para portais corporativos no continente Arquitetura de Portais.

Boas arquiteturas,
de Pangea, Adriano.

(*) JCP é a sigla de Java Community Process. JCP é a comunidade que desenvolve as especificações Java.
(**) JSR é a sigla de Java Specification Request. JSR é uma requisição para uma nova especificação Java.
(***) WSRP é a sigla de Web Services for Remote Portlets Specification. WSRP é uma especificação do grupo OASIS.

Exibições: 183

Comentar

Você precisa ser um membro de PanGea para adicionar comentários!

Entrar em PanGea

Badge

Carregando...

© 2018   Criado por Adriano Tavares.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço