Mostrando entradas con la etiqueta JSF. Mostrar todas las entradas
Mostrando entradas con la etiqueta JSF. Mostrar todas las entradas

sábado, 25 de mayo de 2013

ManagedBean

Una clase java asociada a un formulario Jsf se les denomina ManagedBean, tenemos dos formas de declarar una clase como ManagedBean:
  • En el fichero face-config.xml:
  • @ManagedBean: 
                                       import javax.faces.bean.ManagedBean
                                       import javax.faces.bean.SessionScoped
                                      @ManagedBean
                                      @SessionScoped
                                       public class NombreBean {
                                      String mensaje="Hola";
                                     
                                          public String getMensaje() {
                                            return mensaje;
                                         }

                                         public void setMensaje(String mensaje) {
                                            this.mensaje = mensaje;
                                         }
                                       }
         Si no añadimos a la anotación (name="nombre") se utilizará por defecto el nombre de la clase en      minúscula y para usarlo en la clase jsf se utiliza la siguiente sintaxis  #{nombreBean.mensaje}

viernes, 24 de mayo de 2013

Ciclo de vida de un JSF

Cuando un usuario pincha en un botón o un link comienza el ciclo de vida de JSF, que contiene varias fases:
  1. Restore View:  se crea la vista con la información desde cero o la ya existente en los componentes si fue redireccionada desde otro control de jsf.
  2. Apply Request Values: se invocan los convertidores definidos, la funcionalidad del convertidor es transformar el dato String de la forma a uno de tipo Java y viceversa, también mantiene el dato String para seguirlo presentando en pantalla en la etapa de producir respuesta.
  3. Process Validations: se validan los valores pasado en la fase de aplicación llamando a los validadores de cada componente: validate(), marcando como error y creando el mensaje aquellos que no pasen la validación.
  4. Update Model Values: actualiza los valores del modelo con los nuevos valores pasados en la petición.
  5. Invoke Application: en esta fase, la implementación JSF maneja cualquier evento a nivel de aplicación, como enviar un formulario o enlazar a otra página.
  6. Render Response: se genera la respuesta Html.

miércoles, 23 de noviembre de 2011

valuePassThru

Estaba teniendo problema a la hora de seleccionar un valor de un combo y recargar otro, me daba un error java.lang.IndexOutOfBoundsException: SelectOne submittedValue's index 2 is out of bounds. It should be between 0 and 0 cuando volvía a seleccionar un elemento del combo primero.

Buscando por internet encontré esta propiedad valuePassThru="true" que si lo colocamos en el combo segundo eliminaba ese fallo que se generaba debido al seleccionar el primer combo, se rellenan los valores del segundo, si elegimos un valor en el segundo, y después cambiamos el primero, el valor anteriormente elegido en el segundo combo puede no existir ya que este se rellena con los nuevos valores correspondientes al valor elegido en el primer combo entonces la propiedad valuePassThru lo que hace es usar los valores reales de la lista desplegable en lugar de los valores del índice.

miércoles, 5 de octubre de 2011

Rich-message

Cuando queremos que aparezca un mensaje de validación de un campo, podemos usar esta etiqueta poniendo ", por ejemplo si queremos que un campo sea obligatorio y si no se rellena que te salga el mensaje de validación hacemos lo siguiente :


martes, 3 de noviembre de 2009

Barra de progreso con Rich Faces

Estoy importando unos datos y para que el usuario no se crea que no esta haciendo nada la aplicacion he creado una barra de progreso para que veo como va la importación de datos.

Para ello he utilizado las etiquetas siguiente:

y el metodo en mi clase que hace la importacion es :

public String actionImportarDatos(){
progreso = 1;
enProgreso = true; //sino esta a true no sale la barrita

List listadoDatosImportar = new LinkedList();
listadoDatosImportar =método para rellenar esta lista con los datos que voy a importar;

total = listadoDatosImportar.size();
for (DatosIMportar datos : listadoDatosImportar) {
progreso++;

BO. save(datos); //en el BO tengo un metodo que guarda ese dato importado en la tabla.

}

mensaje = "Libros importados correctamente";
return null;
}


public int getPorcentaje() {
try {
return Math.min(progreso * 100 / total, 100);
} catch (ArithmeticException e) {
return 0;
}
}

miércoles, 24 de septiembre de 2008

BreadCrumbs

Es el menú de links (normalmente horizontal) que indica por las páginas que has pasado desde el index hasta llegar a esa.Su objetivo es que el usuario vuelva exactamente por donde ha venido.

Por ejemplo:
noelia-java.blogspot.com --> Jsf --> BreadCrumbs

martes, 9 de septiembre de 2008

Comparaciones JSF

Soporta cualquiera de estas:

. } [ > gt <>= ge <= le == eq != ne && and || or * + - ? / div % mod (

martes, 29 de julio de 2008

Web.xml

El archivo web.xml proporciona la configuración y el despliegue de información para los componentes Web que conforman una aplicación web.
Ejemplos de componentes Web son los parámetros de servlet, Servlets y JavaServer Pages (JSP) definiciones, y Localizadores Uniformes de Recursos (URL) mapeos.

El archivo web.xml debe residir en el WEB-INF directorio en el contexto de la jerarquía de directorios que existen para una aplicación Web.
Por ejemplo, si la solicitud es client.war, entonces el archivo web.xml se coloca en el raíz_instalación / cliente guerra / WEB-INF directorio.



Faces-Config.xml

Es el archivo de configuración central de los JavaServer Faces.

Se espacifican los eventos, acciones , beans de respaldo (backend bean, bean que almacena las propiedades de los componentes UI de la página y los métodos asociados).

miércoles, 23 de julio de 2008

ui:fragment

Esta etiqueta nos sirve para introducri una nuevo UI Componente en un JSF
Básicamente sirve para los rendered.

CheckBox con JSF


lunes, 14 de abril de 2008

JDeveloper + JSF Configuración del faces-config.xml

JDeveloper tiene una interface gráfica para poder configurarlo más facilmente.


Con esta ventanita podemos crearnos los beans o las reglas de navegación entre páginas entre otras cosas.
En el caso de los beans tenemos la siguiente ventana:
Le ponemos el nombre que queramos ,elegimos la clase que va a corresponder ese beans y el ambito que va a tener que puede ser:
  1. Application
  2. Session
  3. Request
Voy a poner de la imagen del código que genera esta pantalla de un proyecto que tengo hecho anteriormente:
Cuando queramos inyectar un bean en otro(recordar siempre la dirección de inyecciones de beans que escribi entre post)
Y desde la interface gráfica se pincha en el bean que le queremos inyectar otro beans,le damos a Managed Properties /New,ponemos el nombre de la propieda y la clase,más abajo aparece Managed Property y le ponemos el nombre del bean a inyectar con #{nombre del bean}

martes, 1 de abril de 2008

JSF -->incluir una página en otra

Para incluir una página dentro de otra se utiliza el código siguiente:


Tenemos quu incluir en las páginas principal y la que vamos a incluir las declaraciones de librerias de etiquetas como aparece en esta foto:



JDeveloper + JSF

Vamos a ver como se crea aplicaciones web con jdeveloper y jsf.
Al abrir el programa jdeveloper, en la parte izquiera tenemos una ventanita donde aparece la palabra Applications.

Pinchamos con el botón derecho y elegimos la opción New Application y se nos abrirá una ventana para poner el nombre,el package,la ruta del directorio de la aplicación y una pestaña llamada Application Template donde elegiremos el tipo de plantilla a utilizar en la aplicación,en este caso elegiremos la opción JSF|EJB.

Al darle aceptar se nos creará la aplicación con JSF con la siguiente estructura:
El archivo faces-config.xml es el archivo de configuración y en la carpeta lib contiene 2 archivos jar que serán los que contengan las clases usadas por los JSF.

Para crear una página JSf pinchamos con el botón dereco sobre ViewController en la opción New elegimos JSF/JSF JSP y al darle aceptar se nos abrirá un asistente paras la configuración de la página.
En una de las ventanas nos pide el nombre de la página y abajo tenemos dos opciones una para crear un jsp simple y otro para crear un jspx(utiliza xml para la representación de los jsp),elegimos este último.
La siguiente pantalla podemos crearnos los beans automaticamente o no, al pulsar siguiente nos abre otra pantalla para elegir librerias que queremos o necesitemos usar para este proyecto.
Y la siguente pantalla es para configurar los stylos de la página.
Ya tenemos nuestra primera página creada!!!!!!!!!

JBoss Seams = JSF + EJB3

Aquí tengo varios manuales muy interesantes:

miércoles, 26 de marzo de 2008

Direcciones de las inyecciones de dependencia con JSF

Los bean se pueden almacenar de 3 formas distintas:


  1. application(mayor ámbito).
  2. session.(2 de mayor ámbito)
  3. request.(es el de menor ámbito)

Hay que tener encuenta que JSF no deja que un bean de menor ámbito se inyecte en un bean de mayor ámbito.

Y tambien para inyectar beans estos deben estar creados.

Pero si se puede inyectar bean de mismo ambitos.

lunes, 10 de marzo de 2008

JSF

JSF(JavaServer Faces)--> es un framework de desarrollo basado en el patrón MVC (Modelo Vista Controlador).
La tecnología JSF ofrece una clara separación entre el comportamiento y la presentación de la aplicación.
Al igual que Struts, JSF pretende normalizar y estandarizar el desarrollo de aplicaciones web.
Hay que tener en cuenta JSF es posterior a Struts, y por lo tanto se a nutrido de la experiencia de este, mejorando algunas sus deficiencias.
JSF no puede competir en madurez con Struts (en este punto Struts es claro ganador), pero si puede ser una opción muy recomendable para nuevos desarrollos, sobre todo si todavía no tenemos experiencia con Struts.


Algunos manuales:
http://java.sun.com/j2ee/1.4/docs/tutorial/doc/JSFPage5.html
http://www.programacion.com/java/tutorial/jsf_intro/5/

JSF incorpora APIs para el desarrollo de interfaz de usuario.
API:
http://java.sun.com/javaee/javaserverfaces/1.1/docs/api/index.html