Tobago

RECU-0088 (Recurso Ficha Técnica)

Descripción

Tobago es una librería de componentes JSF desarrollada por Apache MyFaces. El objetivo de Tobago es proveer a la comunidad de un conjunto de componentes de interfaces de usuario bien definidos basado en JSF y basada en MyFaces.

Tobago ayuda a los desarrolladores en la creación de páginas webs con una apariencia consistente. Para ello, aporta un conjunto de componentes de alto nivel, que pueden ser posicionados con un gestor de diseño.

El objetivo es realizar aplicaciones webs que se asemejen en apariencia a las clásicas de escritorio. Tobago se basa en una estricta separación de la estructura y el diseño. Los desarrolladores describen la estructura de una página y de los controles que esta contiene. Tobago se encarga de representarla y de los estilos. El desarrollador puede personalizar el diseño y el estilo mediante el uso de temas.

Actualmente, Tobago sólo contiene temas para clientes HTML. Para lograr la independencia de la salida, las vistas deberían desarrollarse sin HTML, CSS o JavaScript. Una pagina con Tobago, normalmente solo contiene JSF y etiquetas de Tobago. Características, estilo y diseño vía HTML, CSS o JavaScript, las maneja el tema utilizado por Tobago.

Haciendo un resumen de su historia, se puede ver que el desarrollo de Tobago comenzó en 2002. Con la introducción del estándar JSF, se decidió que Tobago se basara en él. Sobre el 2005, Tobago se lanzó como proyecto de código abierto y se convierte en un subproyecto de Apache Myfaces en 2006.

Ventajas e inconvenientes

Tobago forma parte del proyecto MyFaces de Apache, que ofrece una implementación en código abierto de JSF, así como un amplio conjunto de componentes adicionales. Entre ellos se dispone de un menú, árboles, pestañas, componentes para gestionar el estado de los diálogos, etc. Algunos de estos componentes están implementados haciendo uso de Ajax. A lo largo del tiempo se van incorporando componentes cada vez más potentes y ya se encuentran en pruebas componentes basados en Ajax.

Un gran inconveniente que plantea el uso de Tobago es la deficiente documentación de la que se dispone sobre el framework.

Requisitos e incompatibilidades

Requisitos

Para un uso correcto de Tobago, vamos a necesitar tener los siguientes componentes instalados:

  • Java 1.5 o superior
  • Maven 2 para la descarga de librerías necesarias (al menos la versión 2.0.6).

En caso de que se desee emplear Maven 3, hay que tener en cuenta que existen problemas de compatibilidad entre el plugin Tobago Maven APT y Maven3. Para solucionar este problema, existe un plugin alternativo (Mojo Maven APT Plugin).

Si no se puede trabajar con maven, se deberán descargarse las siguientes librerías de Jakarta Commons libraries. Concretamente serán necesarias:

  • commons-beanutils
  • commons-collections
  • commons-digester
  • commons-fileupload
  • commons-io
  • commons-lang
  • commons-logging

Además, hemos de seleccionar una implementación de JSF. Las librerías necesarias a incluir son:

  • myfaces-apl
  • myfaces-impl
  • commons-codec
  • commons-el
  • jstl

Debemos descargar e instalar un contenedor servlet. Nos vale cualquier servidor en el que pueda ejecutarse la versión 1.1 de JSF, no nos vale con un contenedor que sólo soporte la versión 1.0 de JSF.

La ejecución de aplicaciones bajo entornos Java 1.4 también está soportada.

Incompatibilidades

No se han detectado.

Interacciones

Al tratarse de una librería JAR, Tobago necesitará un entorno Java para poder ejecutarse. También será necesario disponer de un cliente SVN y de Maven 2 para la obtención de artefactos.

No todos los artefactos requeridos están en los repositorios públicos de Maven. Nos tendremos que bajar la distribución Facelets. Facelets es un sistema simplificado de presentación, en donde es posible diseñar de forma libre una página web y luego asociarle los componentes JSF precisos. Aporta mayor libertad al diseñador y mejora los informes de errores que tiene JSF entre otras cosas.

En el apartado de "Instalación" veremos como obtener los artefactos que faltan.

A continuación presentamos una relación de entornos con los que trabaja Tobago.

  • Java
    • JDK 1.4.x
    • JDK 1.5.x
  • Servlet Container
    • Tomcat 4.x
    • Tomcat 5.x
    • Jrun 4 (SP1a)
    • JBoss 3.2.x
    • Jboss 4.0.x
    • BEA Weblogic 8.1
    • Jonas 3.3.6 w/Tomcat
    • Resin 2.1.x
    • Jetty 4.2.x
    • Jetty 5.1.x
    • Websphere 5.1.2
    • OC4J
  • Custom JSF componentes

Contenidos relacionados

Recursos
Área: Entorno » Área Gestión de la Entrega
Código Título Tipo Carácter
RECU-0681 Características de Maven3 respecto a Maven2 Referencia Recomendado