Veo que de JSF2.0 a partir de Facelets definición de vista que el lenguaje es el preferido de la definición de la vista del lenguaje y no de JSP que se ha dejado de utilizar como un legado a caer. Quiero entender por qué Facelets es preferido sobre JSP como el punto de vista del lenguaje de definición de JSF2.0 en adelante ? Sé que ÉSTA también tiene algunas de las plantillas de comportamiento que es el principal punto de conducción para la adopción de Facelets .

P. S: he sido a través de este post en stackoverflow, pero no creo que esto responde a mi pregunta. Por lo tanto publicar esto como una cuestión separada .

InformationsquelleAutor Geek | 2012-10-26

2 Comentarios

  1. 42

    Cierto, JSP ha algunos plantillas capacidades, pero la mayor desventaja del uso de JSP en JSF es que JSP escribe la respuesta tan pronto como se encuentra la plantilla de contenido de texto, mientras que el JSF gustaría hacer algún tipo de pre/post-procesamiento con ella. En JSF 1.0/1.1 el siguiente código JSF

    <h:outputText value="first"> second <h:outputText value="third"> fourth

    produciría

    segundo cuarto primero tercero

    Esto fue durante el JSF 1.0/1.1 edades un dolor de cabeza. Los desarrolladores necesitan para envolver el texto de la plantilla como second y fourth en el ejemplo de arriba en <f:verbatim> etiquetas largo de todo el lugar. JSF 1.2 ha resuelto con una vista mejorada de controlador que analiza la JSP en lugar de ejecutarlo, pero fue bajo el capó sigue siendo muy torpe como la sintaxis JSP no está «bien formado» como XML. Un XML de vista basado en la tecnología era muy deseado, por lo que un eficiente SAX analizador podría ser utilizado. Y Facelets nació (entre Ken Paulsen «JSFTemplating»).

    También, EL unificadas #{} no podía ser utilizado en JSP texto de la plantilla, lo que resulta en feo —y para empezar poco intuitivo— mezcla de ${} y #{}. También, JSTL podría en JSF 1.x en JSP no debe ser utilizado como ver el tiempo de generación de etiquetas. También, la sintaxis JSP con <% %> cosas es de la vieja escuela y la posibilidad de incorporar el raw de código Java en JSP se considera un muy mala práctica que rompe MVC ideología.

    Todos con todos, en JSF/MVC perspectiva, JSP es simplemente feo y terrible y Facelets es simplemente limpio e impresionante.

    • +1, esto es para facelets!
    • EL #{} no podía ser utilizado en JSP texto de la plantilla». JSP2.1 no admite EL unificadas.¿No es así ?
    • Sólo en JSP etiquetas. No en el texto de la plantilla. E. g. <p>#{user.name}</p> no funciona en JSP. El ${} formulario.
  2. 11

    He encontrado las siguientes respuestas en Internet.

    JSFToolbox documentación capítulo 3:

    JSP en Tiempo de Compilación Sobrecarga

    Cada vez que editar, guardar y volver a cargar una página JSP, el servidor JSP genera el compilador de Java servlet código y los compila en un servlet. Esto se llama la JSP proceso de traducción, y por lo general cuesta entre 1 y 2 segundos, dependiendo del rendimiento del servidor.

    Facelets XML Compilación

    A diferencia de JavaServer Pages, Facelets páginas no se compilan en servlets. Desde Facelets páginas XML compatible con el Facelets framework utiliza un rápido SAX-compilador basado para construir sus puntos de vista. También, Facelets puede ser configurado para detectar y procesar los cambios a las páginas de inmediato, la aceleración de su JSF ciclo de desarrollo.

    Libro «JSF 1.2 componentes» de Ian Hlavats, página 49:

    Durante JSF desarrollo de la aplicación, que a menudo hacemos cambios en nuestras páginas JSF,
    dando lugar a frecuentes recompilación de nuestras páginas JSP, y esto en tiempo de compilación
    la sobrecarga puede agregar para arriba.

    Facelets páginas son simples documentos XML (XHTMl páginas) que nunca son compilados
    para servlets sino que utiliza el SAXO basado en el proceso de compilación que construye la interfaz de usuario
    árbol de componentes para nuestros puntos de vista. Por lo tanto Facelets son más rápidas en comparación con JSP, ya que es
    libre de la JSP de traducción de sobrecarga.

Dejar respuesta

Please enter your comment!
Please enter your name here