Primeros Pasos de ICEFaces (Parte II)

Como se vio en la primera entrega sobre ICEFaces la columna vertebral de esta tecnología es el archivo faces-config.xml el cual se configuran múltiples propiedades, dentro de las cuales me enfocare en explicar de manera simple las siguientes
1. Manage Bean: En esta propiedad se definen los objetos (clases) que comunican la JSP con la lógica de la aplicación, en otras palabras el “Bean” como también se le conoce, es el componente que tiene toda la información que el usuario desea ver y que usa una JSP como medio para visualizar estos datos. Se define de la siguiente manera.

<managed-bean>
<managed-bean-name>banco</managed-bean-name>
<managed-bean-class>co.com.crearapps.beans.BancoBean</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
</managed-bean>

Como se puede ver tenemos los siguientes atributos:
  • managed-bean-name: Define el nombre del bean dentro de la JSP, esto quiere decir, que dentro de la JSP usaremos al bean como lo definimos dentro de este atributo.
  • managed-bean-name: Define el nombre del objeto a la que vamos a ser referencia, es la clase que contendrá toda la lógica para presentar en la JSP.
  • managed-bean-scope: Define el limite que deseamos que tenga nuestro bean dentro de la aplicación; los valores pueden ser, request (a nivel de petición), session (a nivel de la sesión de la aplicación), application (a nivel de la aplicación).
Concluyendo esta sección hemos creado un manage bean o simplemente un bean llamado banco, cuya referencia es la clase BancoBean que se encuentra en el paquete co.com.crearapps.beans y con un límite de petición. Recomiendo que los beans sean creados sobre un mismo paquete con el fin de tener una mejor organización dentro de la aplicación.

2. Ruta o Mapa de Navegación: Se encarga de configurar los diferentes caminos por donde se puede navegar dentro de la aplicación, a continuación se presenta la forma en como definimos dicho mapa.

<navigation-rule>
<from-view-id>/*</from-view-id>
<navigation-case>
<description>Consultar Saldo Banco</description>
<from-outcome>irConsultaBanco</from-outcome>
<to-view-id>/consultaBanco.iface</to-view-id>
</navigation-case>
</navigation-rule>

Donde,

  • navigation-rule: Espacio para definir la regla de navegación de la aplicación.
  • from-view-id: Paginas desde donde se pueden lanzar los eventos de comunicación con las demás JSP.
  • navigation-case: Sección donde se define la pagina que se debe cargar cuando se invoque su ejecución
  • description: Descripción de la JSP que será cargada
  • from-outcome: Evento que se invoca desde una clase para cargar la JSP.
  • to-view-id: Define la JSP que se cargara cuando se lance el evento definido previamente.
Resumiendo un poco, tenemos que definimos una regla de navegación donde desde cualquier JSP (from-view-id) podemos hacer llamados a los casos de navegación. También tenemos que cuando en un bean direccionemos a “irConsultaBanco”, ICEFaces se encargar de cargar la JSP consultaBanco.iface.

En la siguiente entrega veremos un ejemplo aplicado a estos conceptos.

Si te fue útil, has comentarios y recomiéndalo !.

Comentarios

  1. mmm me parece bueno el post, pero podrias realizar ejemplos con JSF y glassfish o con primefaces...

    gracias...

    ResponderEliminar
  2. ok, lo tendre en cuenta, por ahora los ejemplos estan diseñados para correo en Tomcat.

    ResponderEliminar
  3. esta muy bien tu post, gracias. Estaba buscando algo como esto, en el cual se explique sin tanto código y con pocas palabras el funcionamiento general del marco de trabajo. Nota aparte, siempre me han dado gracia las personas que probablemente no comprenden el esfuerzo que implica mantener un blog actualizado y mas en informatica como para encima poner "peros" y exigir. ;)

    ResponderEliminar
    Respuestas
    1. Muchas gracias, por comentarios como estos es por los que vale la pena seguir escribiendo.. Saludos

      Eliminar

Publicar un comentario

Entradas populares de este blog

Algo de Humor: Leyes de Java

Biztalk 2013 Demo

MSDTC error code 0x8004D02A