Aunque he hablado un poco de gwt y personalmente me ha parecido la mejor opción a la hora de realizar aplicaciones ricas en internet, he decidido investigar un poco sobre la tecnología JSF de sun ya que después de todo es el estándar, la idea es conocer más sobre esta opción de desarrollo y a la postre poder hacer un comparativo sobre ellas. Ya hace tiempo venia buscando una implementación para enfocarme en ella, probé con RichFaces de JBoss pero con la salida del más reciente podcats de la asociación de javahispano me he decidido por IceFaces.
Qué es ICEFaces?
Bueno pues podemos decir que es un framework de desarrollo web creado sobre la especificación jsf y con capacidad de procesamiento de solicitudes ajax, que nos permiten a los desarrolladores web construir aplicaciones con contenido enriquecido, programando únicamente en java y sin tener que agregar un applet u objetos que dependan de complementos propios de x navegador.
Qué beneficios me aporta usarlo?
Los beneficios son numerosos pero podemos destacar:
- Una mejor experiencia del usuario: Usando los componentes con soporte ajax y con la posibilidad de crear nuevos, se puede mejorar la experiencia del usuario al usar la aplicación.
- Es open source: ICEFaces es un proyecto liberado de código abierto, lo que garantiza que siempre tendremos un soporte por parte de la comunidad, actualmente existen alrededor de 70,000 desarrolladores involucrados con su mejoramiento.
- Basado en estándares: Esto nos permite integrar el framework ya sea en aplicaciones nuevas o existentes, y con la posibilidad de usar las ventajas que ofrecen los mejores ides del mercado como eclipse o netbeans.
- Compatibilidad: Ha sido probado en una gran cantidad de servidores, ides y navegadores. Además es posible integralo con otros productos como hibernate o librerías para el manejo de javascript.
- Ajax push: No encontré una buena forma de traducir esto, pero lo que nos permite no es más que hacer un renderizado de la página en el navegador del cliente que sea iniciado por un evento en el servidor, es decir un renderizado iniciado por el servidor y no por el cliente.
- Seguridad: Es uno de los frameworks más seguros (si no el más) que actualmente podemos encontrar en el mercado. Tiene compatibilidad con SSL, previene la inyección de códogo malicioso XSS, es una tecnología del lado del servidor, lo que nos garantiza que la lógica de negocio de nuestra aplicación no será mostrada al cliente (esto tiene su contraparte en el consumo de recursos de la maquina servidor).
Versiones de java soportadas:
- Sun JDK 1.4 o superior.
- MyFaces y Sun JSF 1.1
- Sun JSF 1.2
Integración con IDES:
Es posible integrarlo en los siguientes IDES.
- Eclipse.
- My Eclipse Enterprise Workbench.
- Sun Netbeans.
- Oracle Jdeveloper.
- IBM RAD.
Servidores de aplicaciones soportados:
- Apache Tomcat.
- BEA Weblogic Server.
- JBOSS Application server.
- IBM WebSphere Application Server.
- Oracle Aplication Server Container for J2EE (OC4J).
- SAP NetWeaver.
- Sun GlassFish.
- Sun Java System Application Server.
- Webtide Jetty.
Compatibilidad con los siguientes navegadores web:
- Microsoft Internet Explorer 6.x, 7.x, 8.x.
- Firefox 2.x, 3x.
- Safari 3.x.
- Google Chrome 1.x.
- Apple Safari (iPhone, iPod Touch).
- Opera Mobile.
- RIM Blackberry Bold.
Información tomada de la documentación de IceFaces.








