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

2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxPryhaSalam
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscaeliseo91
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 

Último (20)

Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fisca
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 

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!