ICEFaces es un framework de código abierto para construir aplicaciones web ricas basadas en AJAX utilizando JavaServer Faces. Permite incluir etiquetas Ajax que generan código Ajax automáticamente, aislando al desarrollador de las complejidades de AJAX. Está basado en estándares como JSF y proporciona una amplia gama de componentes UI con funcionalidad AJAX integrada. Se puede desplegar en varios servidores de aplicaciones y navegadores sin necesidad de plugins.
1. ICEFACES
● Leonardo Reina. 160-1936
● Richard Morales. 160-1927
2. CARACTERÍSTICAS
- Es un framework de código abierto para construir
aplicaciones web con AJAX tipo RIA (Rich Internet
Application).
- Permite al programador incluir una serie de Ajax-tags en
sus JSP o xhtml de tal manera que el código Ajax es
generado por el propio framework automáticamente.
- ICEFaces aisla completamente al desarrollador de AJAX.
3. CARACTERÍSTICAS (2)
- Las aplicaciones desarrolladas en ICEfaces no necesitan
plugins de navegador o applets para ser vistas.
- Estas aplicaciones están basadas en JavaServer Faces (JSF)
IceFaces = Java Server Faces + Ajax
- No hacen falta etiquetas especiales: se ponen los controles en
la pantalla e ICEFaces se encarga de enviar entre cliente y
servidor sólo la información necesaria.
4. CARACTERÍSTICAS (3)
● Ficha
- Autor: ICEsoft Technologies Inc.
- Stable release: 2.0.2 / 2011-05-13
- Type: Ajax, Java, JSF2, Framework
- License: Open Source MPL
- Website: http://www.icefaces.org
● La comunidad cuenta con más de 100.000 desarrolladores en todo
el mundo (abril de 2010). Se utiliza el sitio web ICEfaces.org
para la información y coordinación, administrado por ICEsoft
Technologies Inc.
6. ARQUITECTURA (2)
Los principales elementos de la arquitectura ICEfaces incluyen:
- Persistent Faces Servlet: Las URLs con extensión ".iface" son mapeadas por
el servlet 'Persistent Faces Servlet'. Cuando se realiza una petición de la página
inicial en la aplicación, este servlet se hace responsable de la ejecución del ciclo
de vida JSF para petición asociada.
- Blocking Servlet: Se encarga de la gestión de todos las peticiones de bloqueo
y no-bloqueo después de las primeras páginas.
- D2D ViewHandler: Se encarga de establecer el Direct-to-DOM, incluyendo la
inicialización de la 'DOM Respuesta Writer'. El ViewHandler también invoca al
Parser para analizar el árbol de componentes JSF en la página inicial.
- Parseador D2D: Responsable del montaje de un componente de documentos
JSP. El Parser ejecuta la etiqueta de JSP de procesamiento del ciclo de vida con
el fin de crear el árbol, pero lo hace sólo una vez para cada página. La
compilación del estándar JSP y el proceso de análisis no es compatible con
ICEfaces.
7. ARQUITECTURA (3)
- DOM Response Writer: Se encarga de la escritura en el DOM. También
inicia la serialización DOM para la primera prestación, y desbloquea el DOM
Updater para actualizaciones incrementales.
- DOM Serializer: Responsable de la serialización del DOM de la página inicial.
DOM Updater: Se encarga de conjuntar las de las 'DOM mutations' en una
única actualización DOM.
- Component Suite: Ofrece un conjunto de componentes 'rich JSF' con
influencia AJAX y características del puente, proporcionando los elementos
básicos para aplicaciones ICEfaces.
- Client-side AJAX Bridge: Responsable de la actualización DOM en curso
generada por la solicitud y la respuesta del proceso. También es el encargado
de centrar la gestión y de presentar el proceso.
8. VENTAJAS CON OTROS PRODUCTOS
SIMILARES
- Experiencia de usuario enriquecedora
- Está basado en código abierto
- Basado en estándares
- El Ajax es transparente
- Compatibilidad: ICEfaces soporta todos los servidores de aplicaciones,
aporta plugins para los distintos IDEs y efectos javascript de librerías de
cualquier empresa que haya desarrollado Ajax del mercado.
- Seguridad: es una de las soluciones Ajax más seguras del mercado. Es
compatible con SSL, previene los scripts de cross-site, inyección de código
malicioso.
- Escalabilidad y clustering: El servidor asíncrono HTTP (AHS) aporta una alta
escalabilidad para aplicaciones ICEfaces y pueden ser utilizadas por un gran
número de usuarios concurrentes, además aporta despliegue en clúster
9. DESVENTAJAS CON OTROS PRODUCTOS
SIMILARES
- En una comparativa con un producto similar, se opta por
compararlo con Rich Faces.
- Tiene tantos o más componentes que ésta y visualmente
tiene la misma calidad.
- La documentación posiblemente es peor que la de
RichFaces.
- El modo en que RichFaces hace funcionar Ajax permite
interactuar con otras librerías e incluso añadirle Ajax a
componentes que no lo tuvieran, mientras que ICEfaces
limita a trabajar con sólo aquellos componentes para los que
da soporte.
10. VERSIONES
ICEfaces Technology Preview - June 2005
ICEfaces 0.1.0 Early Access Release - August 2005
ICEfaces 0.2.0 Alpha - October 2005
ICEfaces 0.3.0 Alpha - January 2006
ICEfaces 1.0 Beta - April 2006
ICEfaces 1.0 Community Edition - May 2006
ICEfaces 1.5 Open Source - November 2006
ICEfaces 1.6 July 2007
ICEfaces 1.7 April 2008
ICEfaces 1.8 February 2009
ICEfaces 2.0.0 December 2010
Latest Release: 2.0.2 / 2011-05-13
11. REQUISITOS
A continuación identificamos las plataformas que soportan el desarrollo basado
en ICEfaces.
Integración con IDEs.
Eclipse
NetBeans.
MyEclipse Enterprise Workbench.
BEA Workshop Studio 3, Workshop Studio for JSF.
Oracle JDeveloper 10g Studio Edition.
Servidores de aplicaciones.
Apache Tomcat.
BEA Weblogic Server.
JBoss Application Server.
IBM Websphere Application Server.
Oracle Application Server Container for J2EE (OC4J).
SAP NetWeaver.
Sun GlassFish.
Sun Java System Application Server.
Webtide Jetty.
12. REQUISITOS (2)
Frameworks Java EE.
Liferay Portal 4.3.
JBoss Seam 1.3.
JavaServer Faces (JSF)
Facelets.
Spring Web Flow.
Navegadores soportados.
Internet Explorer 6, 7...
Firefox 1.x, 2.0...
Netscape 7.x...
Safari 1.3...
Opera 9.x...
13. DESCARGA E INSTALACIÓN DE ICEFACES
- Framework: JSF 2.1.1 -------> ICEfaces 2.0.2
- IDE: Netbeans 7.0.1
- Sistema Operativo: Linux (Linux Mint)
- Servidor: Apache Tomcat 7.0.14
- JDK 1.6 (Default)
- Navegador: Chromium
30. 2. CREACION DE LOS MANAGED-BEAN
- ¿Qué son los beans?
Objetos Java que almacenan los datos de aplicación (Plain Old Java
Objects - POJO). La arquitectura de un POJO es separar
completamente la vista del modelo de la aplicación. Este enfoque tiene
numerosas ventajas, incluyendo la resistencia a los cambios en el tipo
de tecnología, mejor mantenimiento, y la capacidad de prueba. Un
POJO dentro de JSF se llama Managed Beans.
- Tipos de Beans
application
Se mantienen los valores a lo largo de la duración de la aplicación y
están disponibles para todos los usuarios.
- Bean creados en el proyecto
pruebaBean.java