2009-03-19 15 views
16

Yo con mucho gusto para obtener referencias a los recursos y la experiencia de las personas en la comparación de las implementaciones de JSF conocidos: MyFaces y IceFaces en términos de riqueza de los componentes, la facilidad para desarrollar, popularidad, estabilidad, apoyo de la comunidad, etc.Compare las implementaciones de JSF

Actualización: como se señaló, la pregunta inicial no es lo suficientemente precisa. Hay pocas implementaciones de JSF (Apache MyFaces, implementación de referencia de Sun) y algunas bibliotecas de componentes JSF (IceFaces, RichFaces, Woodstock, etc.). Pero de todos modos, mi pregunta es acerca de las implementaciones de las bibliotecas de componentes JSF y JSF.

+0

Posible duplicado de [implementaciones JSF y bibliotecas de componentes] (http://stackoverflow.com/questions/2167509/jsf-implementations-and-component-libraries) –

Respuesta

11

¡Cuidado!

JSF es una especificación. Por lo tanto, debe usar una implementación, como la proporcionada por Sun o la proporcionada por Apache (MyFaces).

IceFaces es no una implementación, pero una biblioteca de componentes. Existen otras bibliotecas, como RichFaces, MyFaces Tomahawk, etc.

Puede ver here para ver las diferencias entre las bibliotecas de componentes.

+0

Ese enlace ya no es válido. Se vincula a una página personal no relacionada con la programación. – Jimmy

4

RichFaces desarrollado por Jboss bajo Redhat.

Riqueza de los componentes: Un montón de bonitas características y componentes de la interfaz de usuario ajax.

Facilidad para desarrollar: Subjetivo, pero digo que sí.

popularidad: v3.3.0 tiene unos 13.000 descargas

Estabilidad: Aún en desarrollo activo con nuevas características que se agregan. Sistema en el lugar para Bug Tracking.

Soporte de la comunidad: Tiene un buen online demo con ejemplos de código (el del sitio web de Jboss que debe iniciar sesión para acceder). Hay un forum y wiki en el sitio de Jboss.

2

I second RichFaces. Gran cantidad de documentación buena en las páginas exadel (que Mark también vinculó) y también una muy buena guía para desarrolladores sobre cada componente. Pulgares arriba para Core JSF + Richfaces (que también tienen un buen soporte Ajax).

+0

estoy de acuerdo.uso esta combinación – Inv3r53

4

Si usa Sun RI o MyFaces no hace la diferencia. Ambos implementan lo que define el estándar JSF.

Para las bibliotecas de componentes que tienen que echar un vistazo a:

  • ICEfaces (preferimos este)
  • RichFaces (usted tiene que comprobar el grado de tensión que esto es con el mundo JBoss ya)
  • Tomahawk (el clásico, hay rumores de que el desarrollo es un poco estancado)
  • Trinidad (Oracle ADF Faces núcleo Open Source)

Estos son importantes.Woodstock está muerto y los chicos de ICEfaces están en camino de ofrecer una ruta de migración. Si ya trabaja con las herramientas de Oracle (por ejemplo, JDeveloper), Trinidad es un buen candidato para comenzar. Si trabaja con herramientas de JBoss, RichFaces ya es un buen candidato para comenzar.

Para un uso más independiente, eche un vistazo a Tomahawk e ICEfaces. ICEfaces permite integrar componentes Tomahawk, aunque el skinning no es realmente compatible. La integración es una de las características clave de ICEfaces. El soporte de IDEs, Servidores de aplicaciones y otros frameworks de código abierto es brillante. La integración de Facelets es lo mejor que puedes obtener. La tecnología de empuje AJAX es la mejor implementación de Push en este momento. Muchas de las cosas de JSF 2.0 ya forman parte de ICEfaces 1.8.

Aquí es un poco más por la que preferimos ICEfaces:

http://blog.rainer.eschen.name/2008/09/22/icy-faces-for-more-than-a-year/

Para una introducción en JSF mira aquí:

http://blog.rainer.eschen.name/2008/03/10/how-to-start-the-jsf-dance/

Consejo: Se me pidió por Packt Publishing al final de 2008 para escribir un libro sobre ICEfaces. Estará disponible a fines de octubre de 2009. Sabiendo esto, la respuesta puede ser un poco parcial. Pero esto es el resultado de una prueba larga y más de 1.5 años de experiencia con ICEfaces. Es lo mejor que puedes obtener en tecnología. Probé todas las implementaciones Open Source JSF importantes, antes de que nuestro proyecto eligiera finalmente ICEfaces.

9

Me doy cuenta de que esta es una publicación tardía aquí, pero como estaba buscando expandirme y no lo vi: realmente recomiendo que busque Primefaces también. Todavía soy relativamente nuevo en JSF (tiempo de desarrollo de 1 año) pero he intentado hacer cada subconjunto nuevo en nuestra fase de investigación con un conjunto diferente.

Aquí está mi experiencia: Icefaces maneja AJAX sin mucho trabajo en su extremo. Cuando intentas hacer algo relativamente simple, Icefaces hace un gran trabajo con una pequeña actualización DOM y una interfaz de usuario receptiva. Recomiendo encarecidamente que alguien nuevo comience aquí, ya que podrá obtener algo que funcione rápidamente y aprender todos los detalles de JSF sin sufrir. (También tiene herramientas Eclipse decentes)

Richfaces es una buena suite, maneja ajax en un grano más fino (más parecido a cómo funciona el JSF2.0) Los componentes son un poco insuficientes en mi opinión, pero si está personalizando la apariencia de Richfaces es un mejor lugar para comenzar, ya que generalmente es más fácil de despellejar. (De nuevo, el JSF2.0 simple funciona para esto).

Recientemente probé Primefaces (http://www.primefaces.org). Hay mucho más trabajo involucrado en este conjunto, en la medida en que puede decirse que tiene una ventaja significativa en el número y la apariencia de los componentes. De lo anterior, disfruto trabajando en cosas complejas en Primefaces que fueron completamente frustrantes en Icefaces.

Espero que esto ayude a otro lector, creo que todas estas suites son geniales. Si estás haciendo un loco Javascript y necesitas un control de grano fino ve con Primefaces.

Otra pequeña nota: si se trata de una nueva aplicación, use JSF2.0, tiene importantes ventajas y todavía no he encontrado nada que sea frustrante.

+0

Como una actualización de esto, he estado haciendo un montón de acceso móvil y mientras que Icefaces es más frustrante para trabajar con (cosas complejas) he encontrado que las solicitudes/actualizaciones de AJAX son significativamente más pequeñas sin importar el tamaño y se siente más dinámico. Es solo una nota realmente, a través de 3G o mejores conexiones, es un punto discutible. –

Cuestiones relacionadas