curso richfaces 3.3.3 ii

Post on 09-Jun-2015

3.698 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

I. Sesión 2

Noviembre 2010

Claudio Chaucca UmanaClaudio.chaucca@gmail.com

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

Arquitectura RichFaces

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

Arquitectura RichFaces

Arquitectura RichFaces

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.

Arquitectura RichFaces

Arquitectura RichFaces

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

Arquitectura RichFaces

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

Arquitectura RichFaces

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

Arquitectura RichFaces

ListenersEjemplo de definición de listener seam

Arquitectura RichFaces

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

Arquitectura RichFaces

ServletEjemplo de definición de servlet seam

Arquitectura RichFaces

View handlerSe define en faces-config.xml

Partial Rendering

RichFaces provee rederizado parcial al framework JSF con capacidades Ajax.

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

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)

Re-Rerendering

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

interfaz de usuario.

Manage Bean El Managed Bean debe ser declarado en faces-

config.xml

Manage Bean Practica 15 minutos

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.

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

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

<rich:ajaxValidator>

Practica 10 minutos

<rich:ajaxValidator>

Validaciones personalizadas usando Hibernate Referencia en

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

<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

<rich:ajaxValidator>

Practica 20 minutos

<rich:beanValidator>

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

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

Skinnability

Skinnability

Cambiando Skins en tiempo de ejecución

Skinnability Creando Skin personalizado

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

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

Skinnability Practica 20 minutos

Handling Resources

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

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

Handling Resources

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

Handling Resources

Practica 15 minutos

Caso: Registro de usuario Practica 30 minutos

¡ Gracias !

top related