2011-01-27 40 views
99

Me parece que no puede obtener una respuesta clara en cuanto a la diferencia concreta entre Java del servidor Caras vs. llamada facelets. ¿Alguien puede darme una respuesta clara como tal?!?JSF Facelets vs vs JSP

Además, entiendo que JSF o JSP se pueden usar para crear páginas web dinámicas, pero dos detalles aparentemente contradictorios me confunden. He escuchado los dos siguientes:

  1. Ese JSF es un reemplazo para JSP; y

  2. JSF JSP y formar diferentes partes del Ver en capa web MVC paradigma de Java

Entonces, ¿cuál es? ¡La lógica dicta que casi con certeza no puede ser ambas cosas!

+2

Va a encontrar respuesta en: http://www.realdevelopers.com/blog/development/facelets-vs -jsp también mira esto: http://www.ibm.com/developerworks/java/library/j-facelets/ –

+3

Relacionado: [¿Cuál es la diferencia entre JSF, Servlet y JSP?] (http://stackoverflow.com/questions/2095397/what-is-the-difference-between-jsf-servlet-and-jsp/2097732 # 2097732). – BalusC

Respuesta

121
  • JSF es un framework Java estándar para la web interfaces de usuario basada en un patrón MVC
  • JSP son un estándar (mucho mayor) para generar páginas web a partir de plantillas - estos puede usarse como la vista en una Aplicación JSF, pero también por separado de JSF.
  • Las fajas son una tecnología de vista alternativa basada en plantillas XML puras (sin scriptlets) que se introdujo con la versión 2 del estándar JSF. Solo pueden usarse en una aplicación JSF.

A la luz de esto, vamos a echar un vistazo a sus declaraciones contradictorias:

Eso JSF es un reemplazo para JSP; y

No del todo cierto, ya que JSF puede usar JSP para su vista (y tuvo que hacerlo antes de JSF 2). Sin embargo, las aplicaciones JSF que usan Facelets se pueden ver como un reemplazo para las tecnologías basadas en JSP.

JSF y JSP forman diferentes partes de la vista en la capa web de Java paradigma MVC

completamente equivocado - JSF cubre todo el patrón MVC (aunque puede solaparse con los EJB, ya que ambos se basan en anotaciones que se pueden mezclar en la misma clase).

+0

Gracias Michael - por "scriptlets" ¿te refieres a los componentes basados ​​en Java como respaldo de los frijoles? – Pam

+2

@Pam: no, "scriptlets" significa fragmentos de código java incrustados en un JSP. Estos han sido mal vistos durante mucho tiempo, con bibliotecas de etiquetas y EL como un reemplazo más limpio. El estándar de Facelet los elimina por completo. Los beans de respaldo (o los EJB que asumen su papel) todavía forman parte de una aplicación JSF basada en Facelets. –

+1

Debe tenerse en cuenta que también puede usar Facelets en JSF 1.2, si solo agrega las librerías apropiadas. –

9

De Wikipedia article(JSF)

JSF es un MVC Web marco petición impulsada por basado en el componente basado en modelos de diseño de interfaz de usuario, el uso de archivos XML llamados plantillas de vistas o Facelets vistas.

JSF es un framework web y Facelet es una plantilla de vista para JSF

De Wikipedia article(JSP)

JavaServer Pages (JSP) es una tecnología Java que ayuda a los desarrolladores de software sirven páginas web generadas dinámicamente basado en HTML, XML,

Ver también este tema Difference between jsf and jsp

+1

Entonces, si entiendo correctamente: JSF consta de todas las bibliotecas de etiquetas de componente, clases de convertidor, clases de validador, etc., mientras que el "facelet" es simplemente el archivo XHTML que usa esas etiquetas de componentes y se une a los beans de respaldo. – Pam

+0

sí. brevemente, sí –

4

Java Server Pages (JSP) es la tecnología Java que permite a los desarrolladores y diseñadores web desarrollar rápidamente y mantener fácilmente páginas web dinámicas y ricas en información que aprovechen los sistemas comerciales existentes. La tecnología JSP separa la interfaz de usuario de la generación de contenido, lo que permite a los diseñadores cambiar el diseño general de la página sin alterar el contenido dinámico subyacente.

Facelets es el primer lenguaje no JSP declaración página diseñada para JSF (Java Server Faces) que proporcionó un modelo de programación más simple y más potente para los desarrolladores JSF como comparar a JSP. Resuelve diferentes problemas que se producen en JSP para el desarrollo de aplicaciones web.

Aquí es una tabla que compara las características de scriplets y facelets:

enter image description here Source

Cuestiones relacionadas