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

lunes, 21 de mayo de 2012

IMPLEMENTACIONES JSF

Hola chicos en esta oportunidad mostraré una serie de links con las diferentes implementaciones que JSF maneja (Las más conocidas), para que puedan fácilmente acceder a ellas y comparar la calidad de componentes que estas implementaciones soportan y así escoger los componentes que más se ajusten a sus necesidades. Recuerden que con JSF todo diseño alguno está amarrado a CSS.

Espero haberlos podido ayudar...!!


Referencia:  http://www.jsfmatrix.net



miércoles, 22 de julio de 2009

Integración JSF - IBATIS

Hola compañeros en esta oportunidad estoy posteando sobre este muy bonito Framework
llamado IBATIS, la verdad no muchos motivos no lo había utilizado antes, pero por necesidad de que el manejo de dicho framework es Standard en mi centro de trabajo, me dedique un par de días a investigar todo acerca de este framework y de di con la sorpresa de que es muy útil, rápido de configurar e integrar con otros frameworks a comparación de otros como Hibernate ( Aunque la verdad aun prefiero trabajar con Hibernate ). Este framework lo muy bueno que tiene es que las consultas SQL las realiza en un fichero .XML que esta necesariamente amarrado a un objeto del negocio y donde se mapearan todas las consultas relacionadas a las transacciones en donde este objeto este relacionado, las consultas están embebidas dentro de tags especiales del IBATIS que permiten recibir variables primitivas, variables de tipo clase y hasta objetos completos. Permite el uso de comodines para las consultas y parámetros dinámicos diferenciados por símbolos como el #, permite la reutilización de las consultas realizadas ( Llamado de un QUERRY a otro QUERRY ), para minimizar código, Manejo de Store Procedure, etc. Todo esto dentro de los mapeos y desde la implementación de cualquier DAO asignado simplemente se le llamaría por medio del nombre del ID el cual esta asignado al IBATIS tag que envuelve la consulta SQL respectiva, algo como lo que muestro pero empleado para distintos procesos CRUD:

• Integer estadoGuardar = (Integer)this.update( "nombreIdSQL", nombreMiObjeto );

• Usuario objUsuario = (Usuario)this.insert( "nombreIdSQL", nombreMiObjeto );

• Usuario usuario = (Usuario)queryForObject( "nombreIdSQL", codigo );

• List listaUsuario = (List)queryForList( "getListaUsuario", codigo );


Pensando en esto he visto la necesidad de hacer un aplicativo J2EE de ejemplo donde integro los Frameworks JSF y IBATIS. Es un ejemplo muy completo que se inicia con un login:

Usuario: rguerra
Password: 123

Y internamente es un mantenimiento completo de USUARIOS: Listado, Registro, Modificacion, Eliminacion (CRUD) y ademas le he agredado Filtros con comboBoxs y funcionalidad keyPress.

El aplicativo WEB esta realizado con Eclipse v3.3, bajo una plataforma JAVA v1.6 (Pero funciona tambien con la v1.5), IBATIS v2.1.6 y una motor datos MySql. El Script SQL se encuentra dentro del proyecto y viene con un Store Procedure incluido utilizado para el proceso de logín.

Aplicativo Ejemplo:

Login de la aplicacion..

Listado de Usuarios

Registro de Usuarios Nuevos de tipo 'Administrador'

Usuaio Nuevo Listado

Modificacion de Usuario Nuevo

Listado de Usuario Modificado

Eliminacion de Usuario Modificado

Listado de Usuarios Actuales


Para mayor detalle descargar el ejemplo completo: AQUI.

domingo, 3 de mayo de 2009

Integraciòn JSF - Applet - Servlet

Hola como estan, hace unos dìas estaba trabajando y surgiò la necesidad de realizar una implementaciòn de un sistema y integrar 2 logicas de programaciòn distintas (Aplicacion J2SE y J2EE), para ello sabia que tenia que relizarlo mediante applets incrustados dentro de la aplicaciòn oreintada a web. Pero, lo que deseaba hacer es que trabaje en el servidor, una tranferencia de datos que tenia que hacer mediante un formulario, y como el applet no trabaja en el servidor mismo sino en el cliente, tube que indagar formas diferentes formas de conectar estas 2 logicas de trabajo y encontre una par de formas de hacerlo:

Mediante una conexion de la aplicacion web, enviandole aparametros al applet y este a su vez conectandoce con el servlet (Que hara lo que tenga que hacer en el servidor: guardar en base de datos, guardar una imagen en disco, etc) para que luego este servlet regrese un mensaje de confirmacion entre otras cosas y estas se muestren en la aplicacion web. Todo esto es apreciado en algunos ajemplos que preparè.

Para visualizar como luce la aplicaciòn pulsar:
Aquì.

Para descargar la aplicaciòn demo online pulsar:
Aquì.

Hasta una nueva oportunidad.

viernes, 27 de febrero de 2009

Validaciones y Mensajes Dinamicos con JSF

Aqui muestro una forma muy efectiva de como manejar los Validadores en un Formulario
utilizando el Framework 'JSF', en los casos que se manipulen datos de tipo: 'BigDecimal, String, Integer, Date'. Ademas, muestro tambien una forma de como manipular los de 'JSF' para trabajarlos de forma dinàmica ( Estados: INFO, ERROR, WARNING ).

Para visualizar la Aplicacion demo, donde muestro todo lo explicado anteriormente pulsar: AQUI.

Porsiaca la Aplicacion demo la desarrolle en la Ide 'Eclipse v3.3'. Y para verlo se puede simplemente importar dicho proyecto desde Eclipse.

viernes, 16 de enero de 2009

COMPARATIVO JSP - JSF

En esta oportunidad hablare de un comparativo basico entre JSP y JSF. Ya que a mi como a la mayoria que ahora trabaja con este Framework les pudo haber pasado, el tratar en entender la logica de trabajo de JSF y seguro querer tratar de trabajarlo como uno estaba acostumbrado a trabajar con JSP.

Para comenzar JSP trabaja de una conocida forma en base Request/Response por el contrario JSF tiene una logica de trabajo tipo aplicacion Desktop en base a eventos, esto para que el Developer que venga de trabajar en JAVA J2SE al querer migrar a trabajar con J2EE les sea mas facil de entender. Al comienzo para los que ya han tenido un paso por JSP les sera un poco dificultoso la forma de trabajo pero despues les aseguro que mes gustara mucho este framework, esto debido a la cantidad de controles en sus diferentes frameworks que implementan la logica de trabajo de JSF como lo son: "MyFaces,A4j,RichFaces,Jenia Faces,Tomahawk,IceFaces". Todos muy buenos en realidad y o mejor que pueden trabajar de la mano. La unica cosa que hasta ahorita critico a JSF y en lo que pienso que deberian de mejorar lo antes posible es en tratar que sus controles al momento de hacer el Diseño de la Interfaz sean mas amigables ya que por mas que se traba con una buen CSS. Nunca pero nunca una Interfaz en JSF puede lucir de una manera profesional (Pude lucir bien pero profesional nunca) y claro el diseño demora bastante (La difencia en cuanod se trabajaba con HTML puro, que era rapido y frexible ).

Bueno pero lo que queria hablar desde el comienzo solo me deje llevar, era de como trabajar desde los ManageBean (Que vendria a ser tu Servlet al trabajar con JSF).
al querer mandar y obtener un parametro, un atributo, setear en sesion y simular los tan importantes resquest y response al trabajar con JSF. Bueno aqui les dejo la solucion:


I.- SETEAR EN SESION:

A.- JSP: request.getSession().setAttribute("miVariable",valor);

B.- JSF: FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("miVariable", valor);


II.- RECUPERAR LA SESION:

A.- JSP: request.getSession().getAttribute("miVariable");

B.- JSF: FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("miVariable");


III.- RECUPERANDO 'Context, Request, Response':

A.- JSP: En JSP es automatico al utilizar los Servlet.

B.- JSF: Se tiene que simular el manejo 'Context, Resquest, Response' tanto para el HttpServlet o el Servlet, segun se requiera.


- FacesContext context = FacesContext.getCurrentInstance();

- HttpServletRequest request = (HttpServletRequest)context.getCurrentInstance().getExternalContext().getRequest();

- HttpServletResponse response = (HttpServletResponse)context.getExternalContext().getResponse();

- ServletContext request2 = (ServletContext)context.getCurrentInstance().getExternalContext().getRequest();

- ServletContext sContext = (ServletContext)context.getExternalContext().getContext();

- ServletRequest sRequest = (ServletRequest)context.getExternalContext().getRequest();

- ServletResponse sResponse = (ServletResponse)context.getExternalContext().getResponse();