Mostrando entradas con la etiqueta jsf. Mostrar todas las entradas
Mostrando entradas con la etiqueta jsf. Mostrar todas las entradas

29 junio 2009

Comparando librerías de componentes JSF AJAX - JSFMatrix

JSF AJAX Component Library Feature Matrix es el nombre que lleva la tabla que encontraran en el sitio JSFMatrix, y noten que no digo 'una' sino 'la tabla'.
Como veran, en esta se comparan librerías de componentes JSF incluyendo también comenarios con soluciones y problemas que aplican a éstas además de algunos ejemplos y/o demos. Entre las librerías que se comparan encontramos Tomahawk y Trinidad de Apache, ICEfaces, RichFaces de JBoss, Woodstock de Glassfish, entre otras.


Para aquel que no sepa, JSF (Java Server Faces) es un framework de desarrollo basado en el patrón MVC (Modelo Vista Controlador) que busca simplificarnos la vida al desarrollar interfaces web de usuario en aplicaciones Java EE (Java Enterprise Edition).

A continuación dejo una serie de links, para quien quiera introducirse en el tema, empezando por el sitio oficial de JSF.


12 mayo 2009

Poblema al desplegar (deploy) con JasperReports+JSF+JBoss

Tenemos las siguiente situación:
  • Un poyecto Web con páginas JSF (JavaServer Faces) trabajando con implementaciones para las versiones 1.0 y 1.2 de faces.

  • JasperReports como tecnología para la generación/descarga/impresión de reportes con la cual desarrollaremos utilidades en el propio proyecto.

  • Servidor JBoss sobre el cual levantaremos el modulo web; este caso aplica para las versiones 4.2.x y 5.0.x liberadas hasta la fecha de esta publicación.

Al tratar de deployar el proyecto Web, en el cual se incluyen backerbeans y/o servlets que desarrollan utilizando JasperReports, el servidor cae en un error cíclico repitiendo combinaciones de las secuencias siguientes:
"...
at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:216)
at org.apache.catalina.core.ApplicationHttpRequest.getSession(ApplicationHttpRequest.java:545)
..."

"...
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:638)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:444)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:382)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:310)
at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:410)
at com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:468)
at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:140)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
12:08:43,500 ERROR [lifecycle] JSF1054: (Phase ID: RENDER_RESPONSE 6, View ID: /Jasper01.jsf) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@1d9dbfc]
..."

En consecuencia, nunca logra deployar (desplegar) el proyecto y así inicializar el servidor correctamente.

El problema surge, por algún motivo extraño por el momento, cuando se trabaja con páginas JSF con extensión .jsf. Así que lamento no poder justificar dicho problema.

Pero sí puedo presentarles una solución bien sencilla de realizar al menos. Esta pasa por trabajar/definir todas las páginas con extensión ".jsp" únicamente.


Nro de visita Cantidad de visitas recibidas