curso richfaces 3.3.3 ii

39
I. Sesión 2 Noviembre 2010 Claudio Chaucca Umana [email protected]

Upload: eclaudioaugusto

Post on 09-Jun-2015

3.697 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Curso richfaces 3.3.3 II

I. Sesión 2

Noviembre 2010

Claudio Chaucca [email protected]

Page 2: Curso richfaces 3.3.3 II

Contenidos I Sesión 2

Arquitectura RichFaces Filters, Listeners, Servlets, ViewHandler Partial Rendering / reRendering Manage beans Ajax Validators Skinnability Handling Resources Caso: Registro de usuario

Page 3: Curso richfaces 3.3.3 II

Arquitectura RichFaces

Page 4: Curso richfaces 3.3.3 II

Arquitectura RichFaces

Ajax Filter Registrar el Filter en el web.xml Reconoce multiples tipos de request Diagrama de secuencia muestra el procesamiento de

un request JSF y un Request Ajax Los recursos estáticos o dinámicos son registrados

por el Resource builder en el ResourceCache

Page 5: Curso richfaces 3.3.3 II

Arquitectura RichFaces

Page 6: Curso richfaces 3.3.3 II

Arquitectura RichFaces

Page 7: Curso richfaces 3.3.3 II

Arquitectura RichFaces

Ajax Action Components.- Los componentes de solicitud de acción son : <a4j:commandButton> ,<a4j:commandLink> , <a4j:poll> y <a4j:support>.

Ajax Containers.- AjaxContainer es una interface que define un area en el JSF. <a4j:region> es una implementacion de esta interface.

JavaScript Engine.- corre en el lado del cliente, actualiza las areas del JSF basada en la informacion del Ajax response.

Page 8: Curso richfaces 3.3.3 II

Arquitectura RichFaces

Page 9: Curso richfaces 3.3.3 II

Arquitectura RichFaces

Configuracion de Filter. Ejemplo de como definir el filtro en el web.xml estandar

Page 10: Curso richfaces 3.3.3 II

Arquitectura RichFaces

Configuracion de Filter. Ejemplo de como definir el filtro en el web.xml seam

Page 11: Curso richfaces 3.3.3 II

Arquitectura RichFaces

ListenersDefinimos listener en el web.xmlEjemplo de definición de listener estandar

Page 12: Curso richfaces 3.3.3 II

Arquitectura RichFaces

ListenersEjemplo de definición de listener seam

Page 13: Curso richfaces 3.3.3 II

Arquitectura RichFaces

ServletSe define en web.xmlEjemplo de definición de servlet estandar

Page 14: Curso richfaces 3.3.3 II

Arquitectura RichFaces

ServletEjemplo de definición de servlet seam

Page 15: Curso richfaces 3.3.3 II

Arquitectura RichFaces

View handlerSe define en faces-config.xml

Page 16: Curso richfaces 3.3.3 II

Partial Rendering

RichFaces provee rederizado parcial al framework JSF con capacidades Ajax.

Minimiza la carga del servidor. Ejemplo de renderizado parcial sobre <rich:tabPanel>

Page 17: Curso richfaces 3.3.3 II

Re-Rerendering

Componentes que permiten Re-Rendering <a4j:support>, <a4j:commandButton>, <a4j:jsFunction>, <a4j:poll>, <a4j:push>

reRenderer es un atributo, permite indicar áreas de la pagina que serán actualizadas

Interacciones Ajax Response reRenderer usa algoritmos de busqueda sobre el arbol

de componentes http://java.sun.com/javaee/javaserverfaces/1.2_MR1/docs/api/javax/faces/component/UIComponent.html#findComponent(java.lang.String)

Page 18: Curso richfaces 3.3.3 II

Re-Rerendering

Page 19: Curso richfaces 3.3.3 II

Manage Bean Modelo (.java) asociado a los componentes de la

interfaz de usuario.

Page 20: Curso richfaces 3.3.3 II

Manage Bean El Managed Bean debe ser declarado en faces-

config.xml

Page 21: Curso richfaces 3.3.3 II

Manage Bean Practica 15 minutos

Page 22: Curso richfaces 3.3.3 II

Ajax Validators

RichFaces posee 2 componentes para validar la data de ingreso. <rich:ajaxValidator> <rich:beanValidator>

Provee capacidades de validación sobre Inputs JSF Permite validación predefinida y validación

personalizada Validación basada sobre eventos.

Page 23: Curso richfaces 3.3.3 II

<rich:ajaxValidator> Validación en el lado del Cliente Validaciones simples en base a etiquetas

<f:validateDoubleRange/> <f:validateLength/>

Page 24: Curso richfaces 3.3.3 II

<rich:ajaxValidator>

Practica 10 minutos

Page 25: Curso richfaces 3.3.3 II

<rich:ajaxValidator>

Validaciones personalizadas usando Hibernate Referencia en

http://www.hibernate.org/hib_docs/validator/reference/en/html_single/

Page 26: Curso richfaces 3.3.3 II

<rich:ajaxValidator>

Librerías requeridas, hibernate-annotations.jar, hibernate-commons-annotations.jar, hibernate-core.jar, hibernate-validator.jarlog4j.jar, slf4j-api.jar, slf4j-log4j12-1.5.8.jar

Page 27: Curso richfaces 3.3.3 II

<rich:ajaxValidator>

Practica 20 minutos

Page 28: Curso richfaces 3.3.3 II

<rich:beanValidator>

Validaciones personalizadas usando Hibernate Validación en el lado del servidor

Page 29: Curso richfaces 3.3.3 II

Skinnability

Configura el Skin dentro de web.xml Alto nivel de extencion para CSS No reemplaza el uso de CSS Skins out-of-the-box classic, plain, default, blueSky,

ruby, darkX* Dentro de richfaces-impl-xxx.jar dentro de /META-INF/skins

folder

Page 30: Curso richfaces 3.3.3 II

Skinnability

Page 31: Curso richfaces 3.3.3 II

Skinnability

Cambiando Skins en tiempo de ejecución

Page 32: Curso richfaces 3.3.3 II

Skinnability Creando Skin personalizado

Crear el archivo <name>.skin.propertiesColocar en META-INF/skins y WEB-INF/classesRegsitrar skin en web.xml

Page 33: Curso richfaces 3.3.3 II

Skinnability

Creando Skin personalizado en base A Crear el archivo ruby16.skin.properties en base a

ruby Colocar en META-INF/skins y WEB-INF/classes Regsitrar skin en web.xml

Page 34: Curso richfaces 3.3.3 II

Skinnability Practica 20 minutos

Page 35: Curso richfaces 3.3.3 II

Handling Resources

Carga recursos (.properties), hojas de estilos (.css), javaScript (.js), imagenes etc.

Componente <a4j:loadBundle> Se registra en faces-config.xml

Page 36: Curso richfaces 3.3.3 II

Handling Resources

Manage Bean que define la localidad del contexto Registrar el Manage Bean en faces-config.xml

Page 37: Curso richfaces 3.3.3 II

Handling Resources

Practica 15 minutos

Page 38: Curso richfaces 3.3.3 II

Caso: Registro de usuario Practica 30 minutos

Page 39: Curso richfaces 3.3.3 II

¡ Gracias !