Ing. Pablo Almeida Haro Msc.

JSF ESTATICO

*Crear un proyecto: file/new/ web aplicapplication

 

*Seleccionar el servidor, versión de jee y ruta de inicio

*Seleccionar el framework JSF

 

*En la página index.xhtml que se creó automáticamente colocar el código que sigue 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>

    </h:head>

    <h:body>

             <h:form id="form">

                <h:outputText value="CLIENTES"/>

                <br></br><br></br>

                <h:outputText value="Código:"/>

                <h:inputText id="codigo" value="#{cliente.codigo}" />

                <br></br>

                <h:outputText value="Nombre:"/>

                <h:inputText id="nombre" value="#{cliente.nombre}"/>

                <br></br><br></br>

                <h:commandButton id="insertar" value="Insertar" action="#{cliente.insertar}">  </h:commandButton>

                <h:commandButton id="eliminar" value="Eliminar" action="#{cliente.eliminar}" > </h:commandButton>

                <h:commandButton id="modificar" value="Modificar" action="#{cliente.modificar}"> </h:commandButton>

                <h:commandButton id="buscar" value="Buscar" action="#{cliente.buscar}"> </h:commandButton>

                <br></br><br></br>

                <h:outputText value="#{cliente.mensaje}"/>

           </h:form>

    </h:body>

</html>

 

*Crear el backing bean: click derecho sobre source packages/java class

*Colocar el código que sigue a continuación:

package pkg_jsf_crud;

 

import java.util.List;

import javax.faces.bean.SessionScoped;

import javax.faces.bean.ManagedBean;

import javax.persistence.EntityManager;

import javax.persistence.EntityManagerFactory;

import javax.persistence.Persistence;

import javax.persistence.Query;

 

@ManagedBean()

@SessionScoped

public class cliente

{   public String codigo="";

    public String nombre="";

    public String mensaje="";

    EntityManagerFactory factory=Persistence.createEntityManagerFactory("prj_jsf_crudPU");

    EntityManager em1=factory.createEntityManager();

 

    public cliente ()

    {

    }

    public String getcodigo() {

        return codigo;

    }

    public void setcodigo(String as_codigo) {

        this.codigo = as_codigo;

    }

    public String getnombre() {

        return nombre;

    }

    public void setnombre(String as_nombre) {

        this.nombre = as_nombre;

    }

    public String getmensaje() {

        return mensaje;

    }

    public void setmensaje(String as_mensaje) {

        this.mensaje = as_mensaje;

    }

    public void insertar()

    {

       String sql ="insert into cliente (codigo,nombre) values ('"+codigo+"'"+","+"'"+nombre+"')";

       em1.getTransaction().begin();

       Query qe=em1.createNativeQuery(sql);

       try

       {

           qe.executeUpdate();

           em1.getTransaction().commit();

           mensaje="Se insertó satisfactoriamente";

        }

       catch (Exception ex)

       {    em1.getTransaction().rollback();

            mensaje="No se pudo insertar";

       }

 

    }

    public void eliminar()

    {

       String sql ="delete from  cliente where codigo='"+codigo+"'";

       em1.getTransaction().begin();

       Query qe=em1.createNativeQuery(sql);

 

       int li_filas= qe.executeUpdate();

       if (li_filas>=1)

       {

           em1.getTransaction().commit();

           mensaje="Se eliminó satisfactoriamente";

       }

        else

       {

           em1.getTransaction().rollback();

           mensaje="No se pudo eliminar";

       }

    }

    public void modificar()

    {

       String sql ="update cliente set nombre='"+nombre+"' where codigo='"+codigo+"'";

       em1.getTransaction().begin();

       Query qe=em1.createNativeQuery(sql);

 

       int li_filas=qe.executeUpdate();

       if (li_filas>=1)

       {

           em1.getTransaction().commit();

           mensaje="Se actualizó satisfactoriamente";

        }

        else

        {

            em1.getTransaction().rollback();

            mensaje="No se pudo modificar";

         }

 

    }

    public void buscar()

    {

       String sql ="select * from cliente where codigo="+"'"+codigo+"'";

       Query qe=em1.createNativeQuery(sql);

       List l1=qe.getResultList();

       if (l1.size()>=1)

        {

            Object [] ar_objeto=(Object [])(l1.get(0));

            String ls_nombre=ar_objeto[1].toString();

            nombre=ls_nombre;

            mensaje="";

        }

        else

        {

            mensaje="No se encontro el cliente";

        }

 

    }

}

*Crear la unidad de persistencia: click derecho sobre el proyecto/new persistence unit. Colocar el nombre de la unidad de persistencia, escoger el proveedor de persistencia, escoger el origen de datos

 

*Correr la aplicación: