Está en la página 1de 35

Java Server Faces

Ing. Informática
JSF
Framework utilizado en la generación de paginas WEB dinámicas

Estructura tecnológica con módulos de software completos, que


sirven de base para la organización y desarrollo del mismo.
JSF
Las paginas creadas con JSF utilizan componentes que corresponden a eventos

Arquitectura
basada en
componentes
JSF
Es una especificación de ORACLE.
JSF
Es una especificación de ORACLE.

Cualquier empresa que desee tomar la especificación y mejorarla e implementarla

• Mojarra (Oracle)
• MyFaces (Apache)
Evolución de las Paginas Web en JAVA
- Contenido Estático
HTML - La pagina es renderizada (modelada) siempre de la
misma forma

- Paginas dinámicas
Servlet - Falta de recursos nativos
/JSP - Surgimiento de framework que suplían ciertas
necesidades
Evolución de las Paginas Web en JAVA
- Oracle creo un framework con mejores recursos y que
JSF pudiera ser utilizado nativamente y de forma mas
sencilla por desarrolladores
- Las paginas se montan usando componentes
- Es semejante a la creación de interfaces graficas en
aplicaciones de escritorio
- Existen bibliotecas para botones, cajas de texto,
gráficos, menús, barras de progreso, entre otras.
Funcionamiento JSF
Funcionamiento JSF

HTTP Faces Servlet

Cuando se realizan requisiciones por


parte del usuario al navegador para una
aplicación JSF  Esa requisición cae en
un Servlet… llamado de Faces Servlet
Funcionamiento JSF

HTTP Faces Servlet

Los JSF fueron


diseñados en
base a los
SERVLETS!!!!!!
Funcionamiento JSF

HTTP
Faces Servlet

Es un código Java
llamado en la
requisición de datos.

PUERTA DE ENTRADA
Funcionamiento JSF
Lee un archivo llamado faces-config.xml
Funcionamiento JSF
Lee un archivo llamado faces-config.xml

Este archivo permite configurar la


aplicación.
Funcionamiento JSF

HTTP
Faces Servlet

Carga un archivo
XHTML

TAGS .JSF
Funcionamiento JSF

HTTP
Faces Servlet

Carga un archivo
XHTML

Permite configurar y
validar la pagina web TAGS .JSF
por medio de -BEANS
Funcionamiento JSF

BEANS

Clase JAVA .

Representante de la
pagina web en el
mundo JAVA
Formato HTMHL
• Es un formato para definición de
paginas web.

• Es basado en XML (mas rígido


cuanto al contenido)
Java Server Faces
Práctica Ing. Informática
1. Cree un proyecto web dinámico
2. Pasos para Configurar el proyecto y que pueda
soportar el JSF.
3. Configuración de NameSpaces en archivos xhtml para que
se puedan usar los TAGS del JFS

Del FACELET

xmlns:f =http://xmlns.jcp.org/jsf/core
xmlns:h =“http://xmlns.jcp.org/jsf/html”

xmlns:ui =“http://xmlns.jcp.org/jsf/facelets”
4. Modificar Archivo web.xml

<?xml version="1.0" encoding="UTF-8"?>


<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0">
<display-name>PrimeiroJSF</display-name>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.faces</url-pattern>
</servlet-mapping>
</web-app>
5. Corremos en el Servidor
6. Digitamos la URL

http://localhost:8080/PrimerJSF/index.faces
CONCEPTO DE BEAN

• Clase JAVA que trabaja en conjunto con una o mas paginas JSF
• Es utilizado para almacenar el estado de la pagina
• En el va a quedar el código que permite interactuar formularios,
registros, entre otros.

*Cree un paquete llamado com.co.claseWEB.javaee


*Posteriormente cree una clase IndexBean.java
Serializable
Serialización de un objeto: Implementar Serializable
Para que un programa java pueda convertir un objeto en un montón de bytes y pueda luego recuperarlo, el objeto
necesita ser Serializable. Al poder convertir el objeto a bytes, ese objeto se puede enviar a través de red, guardarlo
en un fichero, y después reconstruirlo al otra lado de la red, leerlo del fichero.

Para que un objeto sea serializable basta con que implemente la interfaz Serializable. Como la
interfaz Serializable no tiene métodos, es muy sencillo implementarla, basta con un implements Serializable y nada
más. Por ejemplo, la clase Datos siguiente es Serializable y java sabe perfectamente enviarla o recibirla por red, a
través de socket o de rmi. También java sabe escribirla en un fichero o reconstruirla a partir del fichero.
public class Datos implements Serializable { public int a; public String b; public char c; }
Voy al Index.xhtml
<h2><h:outputText value="#{indexBean.mensaje} " /></h2>

Llamo la pagina!
OJO LA PRIMERA LETRA EN
MINISCULA
Voy al Index.xhtml
<h2><h:outputText value="#{indexBean.mensaje} " /></h2>

Llamo el método get


Taller No 2 import java.io.Serializable;
import javax.annotation.ManagedBean;
import javax.faces.view.ViewScoped;
import javax.faces.bean.SessionScoped;

@ManagedBean
@SessionScoped

También podría gustarte