SlideShare una empresa de Scribd logo
1 de 33
Aurelio Martín Obando Távara aot@upnorte.edu.pe proyectos iNAVEGACIÓN Y PARÁMETROS
EnalteciendoLos Temas 1 3 2 NavegaciónEstática Beans Administrados NavegaciónDinámica
AGENDA - Nuevas características de JSF 2.0- Navegación estática- Navegación dinámica- Beans Administrados- Resumen Clase 02 1
2 CONTENIDO
JSF 2.0 básico Facelets son la nueva manera estándar de crear JSP’s. 	Navegación entre páginas usando parámetros 	predeterminados y personalizados. 	Los beans administrados con anotaciones reemplazan 	propiedades en el archivo faces-config. 	Soporteajax. Más adelante… 	Validaciones 	Plantillas de páginas Nuevas características de JSF 2.0
La idea Hacer clic en un botón dentro de una página inicial. 	Obtener siempre la misma página de resultado al hacer 	el clic. 	Sincontenido dinámico. Lo necesario 	Propiedades básicas web.xml patrón-url y la propiedad PROJECT_STAGE faces-config.xml 		Etiquetas de apertura y cierre, pero sin cuerpo 	Una página inicial archivo: test.xhtml; URL: test.jsf 		Contiene <h:commandButton action=“successful-test” /> 	Una página de resultado successful-test.xhtml, donde la parte principal del 			nombre del archivo corresponde al action mencionado 			arriba Navegación estática
web.xml Debe ser una versión mayor a 2.5. Glassfish soporta servlets versión 3.0 Brinda mayor detalle en los mensajes de error. Esto es opcional y nuevo en JSF 2.0  Esto es lo mismo que en JSF 1.X Patrón que obedece el Contexto Faces. Otras opciones populares son *.faces o /faces/*
faces-config.xml Durante el ejemplo, este archivo casi siempre estará vacío.  Este ejemplo simple usa páginas de resultado por defecto (derivadas del valor del atributo “action” del botón) y nunca beans administrados. Sin embargo, es imprescindible que este archivo exista y contenga las etiquetas de apertura y cierre legales tal como se muestra en la imagen.
test.xhtml El action usualmente es #{algunBean.algunMetodo}, donde algunMetodo devuelve un String que es el outcome. Pero  también se puede poner un outcome literal aquí. De un modo u otro, el outcome corresponde al nombre de la página de resultado a menos que se cree una regla de navegación en el faces-config.xml.  En conclusión, cuando se presione el botón, la página successful-test.xhtml(del mismo folder que test.xhtml) se visualizará.
Resultado Nótese que la URL es test.jsf en los tres casos. Para la página inicial , se usa aparece la URL test.jsf debido a que el nombre es test.xhtml y el patrón-url en el web.xml es *.jsf. Para las páginas de resultado, JSF (por defecto) usa forwarding, no redirecting, de este modo la URL no cambia cuando se envía el formulario. El mensaje de error en la página de fallos se debe a que usamos Development como PROJECT_STAGE en web.xml. De otro modo, la página inicial se hubiera mostrado sin mensajes.
La idea Hacer clic en un botón dentro de una página inicial. 	Obtener una de dos páginas de resultado, escogidaaleatoriamente. Lo necesario web.xml y faces-config.xml tal como antes 	Una página inicial archivo: health-plan-signup-1.xhtml y contiene <h:commandButton action=“#{healthPlanBean.signup}” /> 	Un bean administrado Nombre: HealthPlanBean Anotación @ManagedBean 		Contiene un método “signup” que retorna dos posibles 			Strings 	Dos páginas de resultados 		Los nombres corresponden a los valores de retorno Navegación dinámica con páginas de resultado
health-plan-signup-1.xhtml La misma cabecera que en JSF 1.x. Pero en JSF 2.0, faceletes son la  manera estándar de hacer JSP’s. No es necesario usar <h:body> o <h.head> en este ejemplo, sin embargo cuando se utilice <h:outputScript> y especialmente <f:ajax>, se requerirá estas etiquetas. Los elementos de entrada son ignorados en este ejemplo simplón. Más adelante se estudiará el atributo “value”. El mismo formato que en JSF 1.X. Pero el nombre del bean administrado se deriva del nombre de la clase Java
HealthPlanBean.java Declarar esta clase como Managed Bean evita una entrada en el archivo faces-config. Debido a que no se le está pasando un nombre en el atributo “name”, el nombre del Managed Bean es el nombre de la clase Java con la primera letra en minúscula. Debido a que no se le está indicando un alcance. El alcance por defecto es Request Scope. Tambié se podría usar una anotación como @SessionScoped. Estos valores corresponden a las páginas accepted.xhtml y rejected.xhtml.
Resultados de página rejected.hxtml accepted.hxtml
Resultado
La idea (la misma que antes) Hacer clic en un botón dentro de una página inicial. 	Obtener una de dos páginas de resultado, escogidaaleatoriamente. Lo necesario 	Nuevo en este ejemplo navigation-rule in faces-config.xml que mapea 			los outcomes (valores de retorno de algún 			método) a páginas de resultado 	Lo mismo que en los ejemplos anteriores 		web.xml, página inicial, bean administrado y 			páginas de resultado Navegación dinámica con mapeo explícito de páginas de resultado
faces-config.xml Página inicial Valores de retorno de los métodos Java que se ejecuta cuando el formulario de la página inicial es enviado. Páginas de resultado que corresponden a los outcomes. Estas reglas de navegación son exactamente iguales que en JSF 1.X.
health-plan-signup-2.xhtml Esta página es idéntica a la página health-plan-signuo-1.xhtml.
HealthPlanBean.java El mismo bean administrado que en el ejemplo anterior. La diferencia radica en que los valores de retorno del método signup() están mapeados a unas página de resultados explícitamente en el faces-config.xml.
Resultados de página page-for-rejected.hxtml page-for-accepted.hxtml
Resultado
La idea Ingresar el código de un cliente de banco y su 	contraseña. Obtener ya sea. Una página que muestre el primer nombre, apellido y 			balance. Distintas versiones dependiendo del balance. Mensaje de error acerca del ingreso de datos. Lo necesario 	Nuevo en este ejemplo Bean: propiedades correspondientes a los parámetros de 			request 	Formulario de entrada:  atributo de “valor” para 				h:inputText 	Páginas de resultado:  #{miBean.miPropiedad} 	Lo mismo que en los ejemplos anteriores web.xml, faces-config.xml Usando Beans Administrados para manejar parámetros de Request
bank-lookup.xhtml Este valor juega un doble rol.  Cuando el formulario es mostrado por primera vez, bankinBean es instanciado y getCustomerIdes llamado. Si el valor es diferente de vacío, ese resultado es el valor inicial de la caja de texto. De otro modo,  la caja de texto aparecerá vacía. Cuando el formulario es enviado, bankingBean es instanciado nuevamente (asumiendo por defecto RequestScope) y  el valor ingresado en la caja de texto es pasado a setCutomerId.
BankingBean.java Estos métodos serán llamados automáticamente  por JSF cuando el formulario sea enviado. El customeres inicialmente null. Dependiendo del dato ingresado, el bean administrado buscará un customer.
BankingBean.java (continuado) Llenados por JSF antes que el método showBalancePage() sea invocado. El customer no es llenado automáticamente por JSFdebido a que no es parte directa de los datos enviados, pero obtenido indirectamente de los datos ingresados. De este modo, customer es llenado por el método showBalancePage()  a través de la lógica de negocio. Existen 5 posiblesresultados de página: wrong-password.xhtml, unknown-customer.xhtml, negative-balance.xhtml,  normal-balance.xhtml, and high-balance.xhtml. Se estáusando el mapeopordefecto de valores de retorno a nombres de archivos en todos los casos (en lugar de reglas de navegaciónexplícitas en faces-config.xml).
normal-balance.xhtml Nótese que en JSF 2.0 se puede usar #{result} en vez de <h:outputText value="#{result}"/>. En ambos casos se obvia los caracteres  HTML, entonces úsese la forma más corta mostrada aquí a menos que se necesite una de las siguientes opciones:h:outputText con el atributo“escape”igual a false, con el atributo“rendered” con un valor calculado, id, converter, etc. negative-balance.xhtmly high-balance.xhtmlson similares.
unknown-customer.xhtml Aunque customerId venga del usuario y pueda contener caracteres HTML, es seguro usar #{bankingBean.customerId} en vez de <h:outputText value="#{bankingBean.customerId}"/>. unknown-password.xhtmlessimilar.
Resultado
Resultado
3 Resumen
RESUMEN ,[object Object]
Usar xhtml con xmlns:h=“http://java.sun.com/jsf/html”
Siempre usar h:head, h:body y h:form

Más contenido relacionado

La actualidad más candente

Lenguaje javascript
Lenguaje javascriptLenguaje javascript
Lenguaje javascriptrmonago
 
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control ToolkitDesarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkitpabloesp
 
Presentación del curso de html5
Presentación del curso de html5Presentación del curso de html5
Presentación del curso de html5futurodelweb.com
 
INTRODUCCIÓN A HTML – XHTML – Clase 03
INTRODUCCIÓN A HTML – XHTML – Clase 03INTRODUCCIÓN A HTML – XHTML – Clase 03
INTRODUCCIÓN A HTML – XHTML – Clase 03Héctor Estigarribia
 
Base de datos con Netbeans
Base de datos con NetbeansBase de datos con Netbeans
Base de datos con NetbeansRandy
 
Introducción a ASP.NET
Introducción a ASP.NETIntroducción a ASP.NET
Introducción a ASP.NETpabloesp
 
Introduccion a HTML - XHTML. Clase 02
Introduccion a HTML - XHTML. Clase 02Introduccion a HTML - XHTML. Clase 02
Introduccion a HTML - XHTML. Clase 02Héctor Estigarribia
 
Plone Gubierno Cuarto SesióN1
Plone Gubierno   Cuarto SesióN1Plone Gubierno   Cuarto SesióN1
Plone Gubierno Cuarto SesióN1ajussis
 
Etiquetas mas utilizadas del lenguaje html
Etiquetas mas utilizadas del lenguaje htmlEtiquetas mas utilizadas del lenguaje html
Etiquetas mas utilizadas del lenguaje htmlDoraliza Hugo Vera
 

La actualidad más candente (17)

Lenguaje javascript
Lenguaje javascriptLenguaje javascript
Lenguaje javascript
 
Primefaces hotel.. TERMINADO
Primefaces hotel.. TERMINADOPrimefaces hotel.. TERMINADO
Primefaces hotel.. TERMINADO
 
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control ToolkitDesarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
 
Formularios en html
Formularios en htmlFormularios en html
Formularios en html
 
Presentación del curso de html5
Presentación del curso de html5Presentación del curso de html5
Presentación del curso de html5
 
Introduccion a VB6
Introduccion a VB6Introduccion a VB6
Introduccion a VB6
 
INTRODUCCIÓN A HTML – XHTML – Clase 03
INTRODUCCIÓN A HTML – XHTML – Clase 03INTRODUCCIÓN A HTML – XHTML – Clase 03
INTRODUCCIÓN A HTML – XHTML – Clase 03
 
Base de datos con Netbeans
Base de datos con NetbeansBase de datos con Netbeans
Base de datos con Netbeans
 
Clase 1 Plataforma introducción a Diseño Web
Clase 1 Plataforma introducción a Diseño WebClase 1 Plataforma introducción a Diseño Web
Clase 1 Plataforma introducción a Diseño Web
 
Introducción a ASP.NET
Introducción a ASP.NETIntroducción a ASP.NET
Introducción a ASP.NET
 
FRAMES BASICO
FRAMES BASICOFRAMES BASICO
FRAMES BASICO
 
Etiquetas html
Etiquetas htmlEtiquetas html
Etiquetas html
 
Jsf
JsfJsf
Jsf
 
Semana 2 Etiquetas semánticas y HTML 5
Semana 2   Etiquetas semánticas y HTML 5Semana 2   Etiquetas semánticas y HTML 5
Semana 2 Etiquetas semánticas y HTML 5
 
Introduccion a HTML - XHTML. Clase 02
Introduccion a HTML - XHTML. Clase 02Introduccion a HTML - XHTML. Clase 02
Introduccion a HTML - XHTML. Clase 02
 
Plone Gubierno Cuarto SesióN1
Plone Gubierno   Cuarto SesióN1Plone Gubierno   Cuarto SesióN1
Plone Gubierno Cuarto SesióN1
 
Etiquetas mas utilizadas del lenguaje html
Etiquetas mas utilizadas del lenguaje htmlEtiquetas mas utilizadas del lenguaje html
Etiquetas mas utilizadas del lenguaje html
 

Destacado

ENJ-500 Atributos para la Calidad del Servicio
ENJ-500 Atributos para la Calidad del ServicioENJ-500 Atributos para la Calidad del Servicio
ENJ-500 Atributos para la Calidad del ServicioENJ
 
TP. Base de datos
TP. Base de datosTP. Base de datos
TP. Base de datosbadperson15
 
Herramientas de gestion de la calidad
Herramientas de gestion de la calidadHerramientas de gestion de la calidad
Herramientas de gestion de la calidadOSCAR TORRES
 
Clases unidad 2 cgc año 2011 clase3
Clases unidad 2 cgc año 2011 clase3Clases unidad 2 cgc año 2011 clase3
Clases unidad 2 cgc año 2011 clase3Illich Gálvez
 
Charla Atributos de calidad con .Net
Charla Atributos de calidad con .NetCharla Atributos de calidad con .Net
Charla Atributos de calidad con .NetCarlos Paez
 
Atributos Del Producto2
Atributos Del Producto2Atributos Del Producto2
Atributos Del Producto2guest9196ea3
 
GESTION DE CALIDAD ING CIVIL UNDAC
GESTION DE CALIDAD ING CIVIL UNDACGESTION DE CALIDAD ING CIVIL UNDAC
GESTION DE CALIDAD ING CIVIL UNDACCarlos Mendoza Luque
 
Las 7 herramientas de la calidad total
Las 7 herramientas de la calidad totalLas 7 herramientas de la calidad total
Las 7 herramientas de la calidad totalShounyAlamillaJ
 
Atributos de la calidad en Salud
Atributos de la calidad en SaludAtributos de la calidad en Salud
Atributos de la calidad en SaludJAPECO69
 
Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...
Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...
Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...Germania Rodriguez
 
Indicadores De Calidad Copia En Blanco Y Negro
Indicadores De Calidad Copia En Blanco Y NegroIndicadores De Calidad Copia En Blanco Y Negro
Indicadores De Calidad Copia En Blanco Y Negrojrmoncho
 
Maquinas que utilizan los ingenieros industriales
Maquinas que utilizan los ingenieros industrialesMaquinas que utilizan los ingenieros industriales
Maquinas que utilizan los ingenieros industrialesAndrea Mosquera
 
Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de software Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de software Joan Manuel Zabala
 
Atributos Del Producto Marketing
Atributos Del Producto MarketingAtributos Del Producto Marketing
Atributos Del Producto MarketingDiego
 
Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de softwareAtributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de softwareGustavo Cuen
 
Arquitectura de software
Arquitectura de softwareArquitectura de software
Arquitectura de softwareLiliana Pacheco
 

Destacado (20)

ENJ-500 Atributos para la Calidad del Servicio
ENJ-500 Atributos para la Calidad del ServicioENJ-500 Atributos para la Calidad del Servicio
ENJ-500 Atributos para la Calidad del Servicio
 
TP. Base de datos
TP. Base de datosTP. Base de datos
TP. Base de datos
 
Herramientas de gestion de la calidad
Herramientas de gestion de la calidadHerramientas de gestion de la calidad
Herramientas de gestion de la calidad
 
Clases unidad 2 cgc año 2011 clase3
Clases unidad 2 cgc año 2011 clase3Clases unidad 2 cgc año 2011 clase3
Clases unidad 2 cgc año 2011 clase3
 
Charla Atributos de calidad con .Net
Charla Atributos de calidad con .NetCharla Atributos de calidad con .Net
Charla Atributos de calidad con .Net
 
Atributos Del Producto2
Atributos Del Producto2Atributos Del Producto2
Atributos Del Producto2
 
Jackson
JacksonJackson
Jackson
 
GESTION DE CALIDAD ING CIVIL UNDAC
GESTION DE CALIDAD ING CIVIL UNDACGESTION DE CALIDAD ING CIVIL UNDAC
GESTION DE CALIDAD ING CIVIL UNDAC
 
Gráficos de control
Gráficos de controlGráficos de control
Gráficos de control
 
Las 7 herramientas de la calidad total
Las 7 herramientas de la calidad totalLas 7 herramientas de la calidad total
Las 7 herramientas de la calidad total
 
Atributos de la calidad en Salud
Atributos de la calidad en SaludAtributos de la calidad en Salud
Atributos de la calidad en Salud
 
Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...
Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...
Marco de referencia para evaluar calidad de sitios OCW mediante atributos cis...
 
Indicadores De Calidad Copia En Blanco Y Negro
Indicadores De Calidad Copia En Blanco Y NegroIndicadores De Calidad Copia En Blanco Y Negro
Indicadores De Calidad Copia En Blanco Y Negro
 
7 herramientas
7 herramientas7 herramientas
7 herramientas
 
Maquinas que utilizan los ingenieros industriales
Maquinas que utilizan los ingenieros industrialesMaquinas que utilizan los ingenieros industriales
Maquinas que utilizan los ingenieros industriales
 
Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de software Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de software
 
Atributos Del Producto Marketing
Atributos Del Producto MarketingAtributos Del Producto Marketing
Atributos Del Producto Marketing
 
Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de softwareAtributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de software
 
Graficas de control por atributo
Graficas de control por atributoGraficas de control por atributo
Graficas de control por atributo
 
Arquitectura de software
Arquitectura de softwareArquitectura de software
Arquitectura de software
 

Similar a P1C2 Navegación y Parámetros

Similar a P1C2 Navegación y Parámetros (20)

P1C1 - Java Server Faces 2.0
P1C1 - Java Server Faces 2.0P1C1 - Java Server Faces 2.0
P1C1 - Java Server Faces 2.0
 
Tutorial bd y php
Tutorial bd y phpTutorial bd y php
Tutorial bd y php
 
Curso Java Avanzado 6 Struts
Curso Java Avanzado   6 StrutsCurso Java Avanzado   6 Struts
Curso Java Avanzado 6 Struts
 
Capitulo3 jsf
Capitulo3 jsfCapitulo3 jsf
Capitulo3 jsf
 
Proyecto web Php-MySQL-Ajax-Flex
Proyecto web Php-MySQL-Ajax-FlexProyecto web Php-MySQL-Ajax-Flex
Proyecto web Php-MySQL-Ajax-Flex
 
P1C5 Lenguaje de Expresiones
P1C5 Lenguaje de ExpresionesP1C5 Lenguaje de Expresiones
P1C5 Lenguaje de Expresiones
 
Practica web de la sesión 5
Practica web de la sesión 5Practica web de la sesión 5
Practica web de la sesión 5
 
Cesnavarra 2008-boletín 8
Cesnavarra 2008-boletín 8Cesnavarra 2008-boletín 8
Cesnavarra 2008-boletín 8
 
Java beans en jsp
Java beans en jspJava beans en jsp
Java beans en jsp
 
Funciones
FuncionesFunciones
Funciones
 
Curso Jsp
Curso JspCurso Jsp
Curso Jsp
 
A toda máquina con herencia visual
A toda máquina con herencia visualA toda máquina con herencia visual
A toda máquina con herencia visual
 
Practica prog pag_dinam
Practica prog pag_dinamPractica prog pag_dinam
Practica prog pag_dinam
 
Java web Lección 04 - JSTL
Java web Lección 04 - JSTLJava web Lección 04 - JSTL
Java web Lección 04 - JSTL
 
Clase 10 formularios
Clase 10   formulariosClase 10   formularios
Clase 10 formularios
 
4. Curso Java JSP (Java Server Pages) - Curso 2005-2006
4. Curso Java JSP (Java Server Pages) - Curso 2005-20064. Curso Java JSP (Java Server Pages) - Curso 2005-2006
4. Curso Java JSP (Java Server Pages) - Curso 2005-2006
 
Atributos autofocus-etc
Atributos autofocus-etcAtributos autofocus-etc
Atributos autofocus-etc
 
05 jsp tags
05 jsp tags05 jsp tags
05 jsp tags
 
Java Web JSTL
Java Web JSTLJava Web JSTL
Java Web JSTL
 
Introducción Seam
Introducción SeamIntroducción Seam
Introducción Seam
 

Más de Aurelio Martín Obando Távara (11)

Configuracion del Entorno
Configuracion del EntornoConfiguracion del Entorno
Configuracion del Entorno
 
Descripción y fuentes de excepciones comunes
Descripción y fuentes de excepciones comunesDescripción y fuentes de excepciones comunes
Descripción y fuentes de excepciones comunes
 
Gestión de Excepciones
Gestión de ExcepcionesGestión de Excepciones
Gestión de Excepciones
 
JEE y Tomcat
JEE y TomcatJEE y Tomcat
JEE y Tomcat
 
P2C5 Introducción a JEE5 - II
P2C5 Introducción a JEE5 - IIP2C5 Introducción a JEE5 - II
P2C5 Introducción a JEE5 - II
 
P1C4 Criterios De Evaluación - T1
P1C4 Criterios De Evaluación - T1P1C4 Criterios De Evaluación - T1
P1C4 Criterios De Evaluación - T1
 
P1C3 Etiquetas JavaServer Faces al detalle
P1C3 Etiquetas JavaServer Faces al detalleP1C3 Etiquetas JavaServer Faces al detalle
P1C3 Etiquetas JavaServer Faces al detalle
 
Etiquetas JavaServer Faces
Etiquetas JavaServer FacesEtiquetas JavaServer Faces
Etiquetas JavaServer Faces
 
Datatable Y Column
Datatable Y ColumnDatatable Y Column
Datatable Y Column
 
P2C2 Introducción a JEE5
P2C2 Introducción a JEE5P2C2 Introducción a JEE5
P2C2 Introducción a JEE5
 
P2C1 - Configuración del Entorno
P2C1 - Configuración del EntornoP2C1 - Configuración del Entorno
P2C1 - Configuración del Entorno
 

Último

c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxMartín Ramírez
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docxAgustinaNuez21
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadJonathanCovena1
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxJUANCARLOSAPARCANARE
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfEDILIAGAMBOA
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDUgustavorojas179704
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORGonella
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfcoloncopias5
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)veganet
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfCESARMALAGA4
 

Último (20)

c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docx
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la Sostenibilidad
 
TL/CNL – 2.ª FASE .
TL/CNL – 2.ª FASE                       .TL/CNL – 2.ª FASE                       .
TL/CNL – 2.ª FASE .
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdf
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
La luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luzLa luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luz
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIOR
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
 

P1C2 Navegación y Parámetros

  • 1. Aurelio Martín Obando Távara aot@upnorte.edu.pe proyectos iNAVEGACIÓN Y PARÁMETROS
  • 2. EnalteciendoLos Temas 1 3 2 NavegaciónEstática Beans Administrados NavegaciónDinámica
  • 3. AGENDA - Nuevas características de JSF 2.0- Navegación estática- Navegación dinámica- Beans Administrados- Resumen Clase 02 1
  • 5. JSF 2.0 básico Facelets son la nueva manera estándar de crear JSP’s. Navegación entre páginas usando parámetros predeterminados y personalizados. Los beans administrados con anotaciones reemplazan propiedades en el archivo faces-config. Soporteajax. Más adelante… Validaciones Plantillas de páginas Nuevas características de JSF 2.0
  • 6. La idea Hacer clic en un botón dentro de una página inicial. Obtener siempre la misma página de resultado al hacer el clic. Sincontenido dinámico. Lo necesario Propiedades básicas web.xml patrón-url y la propiedad PROJECT_STAGE faces-config.xml Etiquetas de apertura y cierre, pero sin cuerpo Una página inicial archivo: test.xhtml; URL: test.jsf Contiene <h:commandButton action=“successful-test” /> Una página de resultado successful-test.xhtml, donde la parte principal del nombre del archivo corresponde al action mencionado arriba Navegación estática
  • 7. web.xml Debe ser una versión mayor a 2.5. Glassfish soporta servlets versión 3.0 Brinda mayor detalle en los mensajes de error. Esto es opcional y nuevo en JSF 2.0 Esto es lo mismo que en JSF 1.X Patrón que obedece el Contexto Faces. Otras opciones populares son *.faces o /faces/*
  • 8. faces-config.xml Durante el ejemplo, este archivo casi siempre estará vacío. Este ejemplo simple usa páginas de resultado por defecto (derivadas del valor del atributo “action” del botón) y nunca beans administrados. Sin embargo, es imprescindible que este archivo exista y contenga las etiquetas de apertura y cierre legales tal como se muestra en la imagen.
  • 9. test.xhtml El action usualmente es #{algunBean.algunMetodo}, donde algunMetodo devuelve un String que es el outcome. Pero también se puede poner un outcome literal aquí. De un modo u otro, el outcome corresponde al nombre de la página de resultado a menos que se cree una regla de navegación en el faces-config.xml. En conclusión, cuando se presione el botón, la página successful-test.xhtml(del mismo folder que test.xhtml) se visualizará.
  • 10. Resultado Nótese que la URL es test.jsf en los tres casos. Para la página inicial , se usa aparece la URL test.jsf debido a que el nombre es test.xhtml y el patrón-url en el web.xml es *.jsf. Para las páginas de resultado, JSF (por defecto) usa forwarding, no redirecting, de este modo la URL no cambia cuando se envía el formulario. El mensaje de error en la página de fallos se debe a que usamos Development como PROJECT_STAGE en web.xml. De otro modo, la página inicial se hubiera mostrado sin mensajes.
  • 11. La idea Hacer clic en un botón dentro de una página inicial. Obtener una de dos páginas de resultado, escogidaaleatoriamente. Lo necesario web.xml y faces-config.xml tal como antes Una página inicial archivo: health-plan-signup-1.xhtml y contiene <h:commandButton action=“#{healthPlanBean.signup}” /> Un bean administrado Nombre: HealthPlanBean Anotación @ManagedBean Contiene un método “signup” que retorna dos posibles Strings Dos páginas de resultados Los nombres corresponden a los valores de retorno Navegación dinámica con páginas de resultado
  • 12. health-plan-signup-1.xhtml La misma cabecera que en JSF 1.x. Pero en JSF 2.0, faceletes son la manera estándar de hacer JSP’s. No es necesario usar <h:body> o <h.head> en este ejemplo, sin embargo cuando se utilice <h:outputScript> y especialmente <f:ajax>, se requerirá estas etiquetas. Los elementos de entrada son ignorados en este ejemplo simplón. Más adelante se estudiará el atributo “value”. El mismo formato que en JSF 1.X. Pero el nombre del bean administrado se deriva del nombre de la clase Java
  • 13. HealthPlanBean.java Declarar esta clase como Managed Bean evita una entrada en el archivo faces-config. Debido a que no se le está pasando un nombre en el atributo “name”, el nombre del Managed Bean es el nombre de la clase Java con la primera letra en minúscula. Debido a que no se le está indicando un alcance. El alcance por defecto es Request Scope. Tambié se podría usar una anotación como @SessionScoped. Estos valores corresponden a las páginas accepted.xhtml y rejected.xhtml.
  • 14. Resultados de página rejected.hxtml accepted.hxtml
  • 16. La idea (la misma que antes) Hacer clic en un botón dentro de una página inicial. Obtener una de dos páginas de resultado, escogidaaleatoriamente. Lo necesario Nuevo en este ejemplo navigation-rule in faces-config.xml que mapea los outcomes (valores de retorno de algún método) a páginas de resultado Lo mismo que en los ejemplos anteriores web.xml, página inicial, bean administrado y páginas de resultado Navegación dinámica con mapeo explícito de páginas de resultado
  • 17. faces-config.xml Página inicial Valores de retorno de los métodos Java que se ejecuta cuando el formulario de la página inicial es enviado. Páginas de resultado que corresponden a los outcomes. Estas reglas de navegación son exactamente iguales que en JSF 1.X.
  • 18. health-plan-signup-2.xhtml Esta página es idéntica a la página health-plan-signuo-1.xhtml.
  • 19. HealthPlanBean.java El mismo bean administrado que en el ejemplo anterior. La diferencia radica en que los valores de retorno del método signup() están mapeados a unas página de resultados explícitamente en el faces-config.xml.
  • 20. Resultados de página page-for-rejected.hxtml page-for-accepted.hxtml
  • 22. La idea Ingresar el código de un cliente de banco y su contraseña. Obtener ya sea. Una página que muestre el primer nombre, apellido y balance. Distintas versiones dependiendo del balance. Mensaje de error acerca del ingreso de datos. Lo necesario Nuevo en este ejemplo Bean: propiedades correspondientes a los parámetros de request Formulario de entrada: atributo de “valor” para h:inputText Páginas de resultado: #{miBean.miPropiedad} Lo mismo que en los ejemplos anteriores web.xml, faces-config.xml Usando Beans Administrados para manejar parámetros de Request
  • 23. bank-lookup.xhtml Este valor juega un doble rol. Cuando el formulario es mostrado por primera vez, bankinBean es instanciado y getCustomerIdes llamado. Si el valor es diferente de vacío, ese resultado es el valor inicial de la caja de texto. De otro modo, la caja de texto aparecerá vacía. Cuando el formulario es enviado, bankingBean es instanciado nuevamente (asumiendo por defecto RequestScope) y el valor ingresado en la caja de texto es pasado a setCutomerId.
  • 24. BankingBean.java Estos métodos serán llamados automáticamente por JSF cuando el formulario sea enviado. El customeres inicialmente null. Dependiendo del dato ingresado, el bean administrado buscará un customer.
  • 25. BankingBean.java (continuado) Llenados por JSF antes que el método showBalancePage() sea invocado. El customer no es llenado automáticamente por JSFdebido a que no es parte directa de los datos enviados, pero obtenido indirectamente de los datos ingresados. De este modo, customer es llenado por el método showBalancePage() a través de la lógica de negocio. Existen 5 posiblesresultados de página: wrong-password.xhtml, unknown-customer.xhtml, negative-balance.xhtml, normal-balance.xhtml, and high-balance.xhtml. Se estáusando el mapeopordefecto de valores de retorno a nombres de archivos en todos los casos (en lugar de reglas de navegaciónexplícitas en faces-config.xml).
  • 26. normal-balance.xhtml Nótese que en JSF 2.0 se puede usar #{result} en vez de <h:outputText value="#{result}"/>. En ambos casos se obvia los caracteres HTML, entonces úsese la forma más corta mostrada aquí a menos que se necesite una de las siguientes opciones:h:outputText con el atributo“escape”igual a false, con el atributo“rendered” con un valor calculado, id, converter, etc. negative-balance.xhtmly high-balance.xhtmlson similares.
  • 27. unknown-customer.xhtml Aunque customerId venga del usuario y pueda contener caracteres HTML, es seguro usar #{bankingBean.customerId} en vez de <h:outputText value="#{bankingBean.customerId}"/>. unknown-password.xhtmlessimilar.
  • 31.
  • 32. Usar xhtml con xmlns:h=“http://java.sun.com/jsf/html”
  • 33. Siempre usar h:head, h:body y h:form
  • 34. Para páginas de resultado, usar usualmente #{blah} en vez de <h:outputText value=“#{blah}” />
  • 36. El valor de retorno de los métodos del bean administrado es el nombre de las páginas de resultado. (menos la extensión .xhtml)
  • 37. Nombre del bean administrado
  • 39.
  • 40. Encuentra esta presentación en el AULA VIRTUAL O tambiénpuedesencontrarla en . Saludos!