Curso de JavaServer Faces Ing. Ubaldo Acosta Soto www.globalmentoring.com.mx uacosta@globalmentoring.com.mx © Derechos Reservados Global Mentoring 2011 Curso de JavaServer Faces Ejercicio 3 Backing Managed Bean www.globalmentoring.com.mx © Derechos Reservados Global Mentoring 2011 Ejercicio 3. Backing Managed Bean Objetivo del Ejercicio Introduciremos el concepto de Backing Managed Bean a nuestra aplicación. Utilizaremos el concepto de anotaciones para inyectar dependencias entre Managed Bean’s. Adicionalmente agregaremos algunas páginas JSF con las respectivas reglas de navegación con notación JSF 2.0. Finalmente asociaremos funcionalidad al botón de Enviar para ejecutar el flujo de la aplicación. Curso de JavaServer Faces 3 © Derechos Reservados Global Mentoring 2011 Ejercicio 3. Backing Managed Bean Paso 1: Agregar un JSF Managed Bean Curso de JavaServer Faces 4 © Derechos Reservados Global Mentoring 2011 Ejercicio 3. Backing Managed Bean Paso 2: Código del Bean VacanteForm Sustituir el contenido de la clase VacanteForm, por el mostrado a continuación: package beans.backing; import import import import beans.model.Candidato; javax.faces.bean.ManagedBean; javax.faces.bean.ManagedProperty; javax.faces.bean.RequestScoped; @ManagedBean @RequestScoped public class VacanteForm { @ManagedProperty(value="#{candidato}") private Candidato candidato; public void setCandidato(Candidato candidato) { this.candidato = candidato; } public String enviar() { if (this.candidato.getNombre().equals("Juan")) { return "exito"; } else { return "fallo"; } } } Curso de JavaServer Faces 5 © Derechos Reservados Global Mentoring 2011 Ejercicio 3. Backing Managed Bean Paso 3: Agregar una página JSF para el caso de "exito" Nota: En caso de no encontrar la opción JSF Page buscarlo en la opción «other» Curso de JavaServer Faces 6 © Derechos Reservados Global Mentoring 2011 Ejercicio 3. Backing Managed Bean Paso 3: Agregar una página JSF para el caso de "exito" (cont.) Curso de JavaServer Faces 7 © Derechos Reservados Global Mentoring 2011 Ejercicio 3. Backing Managed Bean Paso 4: Código de la página JSF para el caso de "exito" •Sustituir el contenido de la página exito.xhtml, por el mostrado a continuación: <?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html"> <h:head> <title>Exito</title> </h:head> <h:body> <h:form> Gracias #{candidato.nombre} por aplicar a la vacante <br/> <h:commandLink action="index">Regresar</h:commandLink> </h:form> </h:body> </html> Curso de JavaServer Faces 8 © Derechos Reservados Global Mentoring 2011 Ejercicio 3. Backing Managed Bean Paso 5: Agregar una página JSF para el caso de "fallo" Curso de JavaServer Faces 9 © Derechos Reservados Global Mentoring 2011 Ejercicio 3. Backing Managed Bean Paso 6: Código de la página JSF para el caso de "fallo" •Sustituir el contenido de la página fallo.xhtml, por el mostrado a continuación: <?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html"> <h:head> <title>Fallo</title> </h:head> <h:body> <h:form> Lo sentimos #{candidato.nombre}, ya se han cubierto todas las vacantes. <br/> <h:commandLink action="index">Regresar</h:commandLink> </h:form> </h:body> </html> Curso de JavaServer Faces 10 © Derechos Reservados Global Mentoring 2011 Ejercicio 3. Backing Managed Bean Paso 7: Modificación de la página index.xhtml •Ubicar en el contenido de la página index.xhtml, lo mostrado a continuación: <h:commandButton value="Enviar" /> •Sustituirlo por el siguiente código: <h:commandButton action="#{vacanteForm.enviar}" value="Enviar" /> Curso de JavaServer Faces 11 © Derechos Reservados Global Mentoring 2011 Ejercicio 3. Backing Managed Bean Paso 8: Ejecutar la aplicación HolaMundo JSF Abrir el navegador web y visualizar el resultado con la siguiente url: http://localhost:8080/HolaMundoJSF/faces/index.xhtml exito fallo Curso de JavaServer Faces 12 © Derechos Reservados Global Mentoring 2011