Lunes, 14 Julio 2014 19:45

Hola mundo con JSF

Escrito por 
Valora este artículo
(2 votos)

JavaServer Faces (JSF) es una tecnología y framework para aplicaciones Java basadas en web que simplifica el desarrollo de interfaces de usuario en aplicaciones Java EE. JSF usa JavaServer Pages (JSP) como la tecnología que permite hacer el despliegue de las páginas.

JSF incluye:
•    Un conjunto de APIs para representar componentes de una interfaz de usuario y administrar su estado, manejar eventos, validar entrada, definir un esquema de navegación de las páginas y dar soporte para internacionalización y accesibilidad.
•    Un conjunto por defecto de componentes para la interfaz de usuario.
•    Dos bibliotecas de etiquetas personalizadas para JavaServer Pages que permiten expresar una interfaz JavaServer Faces dentro de una página JSP.
•    Un modelo de eventos en el lado del servidor.
•    Administración de estados.
•    Beans administrados.
En este post no explicaremos todos los tags de jsf, ni todas las opciones de configuración, ya que en la web hay bastante sino que veremos como crear nuestra primer pagina jsp, haciendo uso de JSF, en Netbeans.
Para ello en primer lugar abrimos nuestro ide NETBEANS (en mi caso 6.8), y creamos nuestro proyecto


Elegimos la tegnologia para trabajar en el proyecto, Java Web ->Web Application


Le damos el nombre y la ubicación

Elegimos el servidor a utilizar y la version de JEE

Elegimos el framework a utilizar y la versión (JAVA SERVER FACES) de JEE, tal como lo muestra la imagen. Y le damos click izq. en terminar..


Hasta aquí ya tenemos nuestro proyecto creado, con sus correspondiesntes archivos creados por el netbeans.


Ahora le agregaremos código y configuración para que nos muestre un hola mundo desde una pagina jsp con jsf.
En primer lugar crearemos un  Managed Bean. A las clases java que se asocian a los formularios JSF se les denomina Managed Beanss (código que se ejecuta detrás de la pagina) ya que son los beans (clases java) que están detras del formulario. Estos beans se referencian en el fichero de configuracion de JSF faceconfig.xml.
Para crear un managed beans le damos click der. sobre Source Packages->Nuevo->Clase Java


Le damos el nombre “Beans”


Y ya tenemos creada nuestra clase, ahora crearemos una propiedad privada con sus correspondientes accesores (get y set).
El código de la clase es el siguiente

  1.  
  2. import javax.faces.bean.ManagedBean;
  3. import javax.faces.bean.RequestScoped;
  4.  
  5. /**
  6.  *
  7.  * @author RAFAEL
  8.  */
  9. @ManagedBean(name="Beans")
  10. @RequestScoped
  11. public class Beans {
  12.  
  13.   private String mensaje="hola mundo";
  14.  
  15.     /** Creates a new instance of Beans */
  16.     public Beans() {
  17.     }
  18.  
  19.   public String getMensaje() {
  20.     return mensaje;
  21.   }
  22.  
  23.   public void setMensaje(String mensaje) {
  24.     this.mensaje = mensaje;
  25.   }
  26.  
  27. }


Nos queda asi


Bien ahora  ya tenemos nuestra clase Beans,java, la cual será la que trabajara detrás de nuestra pagina sjp. Pero ahora nos falta agregar un archivos de configuración faceconfig.xml, el cual será el encargado de indicarle a la pagina cuales son las clases que puede utilizar, osea nuestro managed beans.
Le damos click der. Sobre sobre WEB-INF->Nuevo->JSF Faces Configuration


Dejamos el nombre por defecto y le damos click izq. en terminar


Abrimos nuestro fichero facesconfg.xml y agregamos las siguientes líneas, en donde indicamos la clase a la que accedera nuestra pagina.

<managed-bean>
  <managed-bean-class>Beans</managed-bean-class>
  <managed-bean-name>clase</managed-bean-name>
  <managed-bean-scope>session</managed-bean-scope>
</managed-bean>
Aquilo que estamos haciendo es añadir, como nuestro codigo detras de la pagina a nuestra clase Beans, y la referenciaremos en la pagina index.xhtml, por el nombre clase, y tendra un alcance de sesion (puede ser por aplicacion y tambien de peticion).


Nos queda de la siguiente manera


Ahora lo que nos queda es modificar nuestro index.xhtml
Agregamos los siguientes tags jsf
En esta imagen vemos que el netbeans ya reconoce el beans asociado a la pagina con su correspondiente propiedad.


El código de nuestro index.xhtml nos queda asi

  1.  
  2. <?xml version='1.0' encoding='UTF-8' ?>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  4. <html xmlns="http://www.w3.org/1999/xhtml"
  5.      xmlns:h="http://java.sun.com/jsf/html">
  6.     <h:head>
  7.         <title>Facelet Title</title>
  8.     </h:head>
  9.     <h:body>
  10.       <h:outputLabel value="#{clase.mensaje}"></h:outputLabel>
  11.     </h:body>
  12. </html>

en imagen


Ya estamos en condiciones de ejecutar nuestro primer pagina haciendo uso de jsf


Vemos nuestro mensaje en la pagina extraído desde un beans java.
Bien en este ejemplo vimos como acceder a una propiedad de una clase java de manera sencilla haciendo uso de jsf, en próximos ejemplos veremos mucho mas. Hasta pronto smiley




 

Visto 980 veces

Deja un comentario

Asegúrate de llenar la información requerida marcada con (*). No está permitido el código HTML. Tu dirección de correo NO será publicada.