etiquetas java jsf

java - jsf etiquetas



¿Cuáles son las mejores prácticas para JSF? (8)

He hecho Java y JSP programación en el pasado, pero soy nuevo en Java Server Faces y quiero saber si hay un conjunto de mejores prácticas para el desarrollo de JSF.



Algunos consejos: comprenda el ciclo de vida de las solicitudes JSF y dónde encajan sus diversos códigos. Descubra especialmente por qué los valores de su modelo no se actualizarán si hay errores de validación.

Elige una biblioteca de etiquetas y luego mantente con ella. Tómese su tiempo para determinar sus necesidades y prototipos de diferentes bibliotecas. Mezclar taglibs diferentes puede causar un daño severo a su salud mental.


Considere usar facelets : simplifica en gran medida las peores partes del desarrollo de JSF. Estoy haciendo un proyecto JSF basado en CMS ahora sin facelets (después de hacer un proyecto con él) y parece que me falta el brazo izquierdo ...


He estado utilizando la implementación de IBM de JSf y tengo algunos comentarios. No es un mal camino, pero debes comprometerte con la "forma de vida" de IBM. Han escrito su propia etiqueta lib que extiende el estándar JSF. Si logras mantenerte dentro de Rational Application Developer (RAD) (que no se actualiza ESO a menudo), la integración a veces es defectuosa pero en general decente. Además, la integración con WebSphere es bastante buena. A menos que su empleador juegue golf con IBM, creo que es mejor mantenerse tan vanidoso como sea posible.



Recomiendo encarecidamente contratar a alguien con experiencia en JSF para dirigir su primer proyecto en JSF, incluso si esto significa pagarle a un contratista por 3 meses. El enfoque de JSF es muy diferente a JSP. La forma en que abordas y resuelves los problemas es muy diferente.

Bibliotecas

Considere las siguientes bibliotecas:

Arquitectura

Embrace MVC no solo necesita saber lo que esto significa, sino también usarlo extensamente.

Hay dos patrones principales para asociar controladores con las vistas

Dot Net Style, controlador de una solicitud por vista

Cada página de nivel superior tiene un controlador de ámbito de solicitud (bean), todas las validaciones y acciones de la página usan esta clase. También se usa para filtrar y ordenar el Modelo. El Modelo se almacenará en unos pocos controladores de nivel de sesión que controlarán la conversación con el servidor (EJB o capa de persistencia). Estos controladores de sesión deberían implementar la lógica de negocio y no tener conocimiento de JSF, HTML o cualquier tecnología de presentación.

Los controladores son nivel de sesión

Diseñe controladores basados ​​en su modelo de datos, anételos uno con el otro. (Esta publicación se está haciendo demasiado larga, así que no entraré en detalles prácticos).

Conocimiento requerido

Todo el mundo:

Al menos una persona:

  • Crear componentes personalizados
  • Limitaciones a JSF (botón de retroceso, navegación aleatoria, etc.)
  • Depurar bibliotecas de terceros (Al menos una persona tiene que sentirse cómoda rompiendo el depurador e interviniendo en la implementación de JSF (lo más fácil con implementaciones de código abierto como MyFaces))

Seleccione una buena biblioteca de componentes. No use richfaces, le sugiero que no use jsf, use spring mvc, jquery fro view y json en una arquitectura de descanso. pero si es necesario, use Primefaces, es fácil de usar y tiene suficientes componentes.


  • Agrega mi voto a facelets. Recientemente realicé una actualización de un proyecto para usar facelets, y resuelve algunos problemas importantes con jsf, especialmente al proporcionarle un sistema de plantillas decente desde el primer momento y permitiéndole usar html estándar cuando sea apropiado, sin envolverlo en "literalmente" -etiquetas.
  • RestFaces es una solución al problema get / post del que muchas personas se quejan. También está bien documentado y es fácil de usar.
  • No lo use para muchos taglibs. Hace el trabajo mucho más difícil cuando se actualiza.
  • SEAM recopila muchas de las mejores prácticas de JSF, pero todavía no las he usado, así que no puedo recomendarlas, solo recomiendo que las echen.