SmartGWT

Buscando algo de información sobre GWT, me he encontrado con el proyecto SmartGWT, que es otro extensión para Google Web Toolkit. Lo que más me llamó la atención es que al parecer uno de los desarrolloradores de GWT-Ext está trabajando en éste SmartGWT y lo más destacable es que tiene soporte para DataBiding y Data Integration. Además de poseer otras características y herramientas que facilitan la integración con base de datos. Aquí la página con los demos.

Viene en 2 versiones (típico) una versión libre y otra versión empresarial de pago, ésta última tiene algunas herramientas adicionales.

Ahora me pregunto, con la versión 1.5 del GWT ya se soporta JPA ¿es necesario éste tipo de aplicaciones? En algún lugar leí que aún se tiene problemas al tratar de enviar los objetos anotados con Entity, pero nunca lo he probado. Ahora que hablo de GWT, GWT-Ext y base de datos les comparto un link en donde pueden encontrar 3 vídeos para saber cómo trabajar con GWT más Eclipse más GWT-Ext más Base de datos. En verdad se puede construir en cualquier otro entorno sin problemas. Link

GWT y Base de Datos

Dentro de una de las materias que llevo en la UTPL, estamos analizando GWT como alternativa para el desarrollo de aplicaciones AJAX. Dentro de éste marco preparé unas clases en donde se muestra cómo se puede interactuar con un servidor Web y a su vez con su servidor de base de datos.

Se mostró el uso de GWT-RPC y servlets, la primera de las opciones tal vez la más compleja (por el manejo de interfaces y clases) mientras que la segunda con el problema de comunicar los resultados (éxito o error) con el trabajo de la base de datos. Obviamente ambos superables.

Se utilizó como base de datos Derby DB que viene configurada para el trabajo con NetBeans y que por razones didácticos es más que suficiente.

Para la GUI, la base es GWT, pero extendida con las características GWT-Ext, configuradas como señalé en un post anterior. Personalmente creo que GWT-Ext colabora enormemente en el desarrollo rápido de éste tipo de aplicaciones.

Les comparto los links en donde pueden descargar el proyecto completo y las librerías que se necesitan así como también algunos archivos de configuración (gwtext.jar, derbyclient.jar), el script e la base de datos.

Proyecto.

Archivo adicionales.

GWT-Ext con NetBeans – Configuración

Es conocido que dentro del mundo de NetBeans existe un plugin que nos permite crear aplicaciones GWT y también conocemos la existencia de GWT-Ext que nos aporta con widgets adicionales a los que trae GWT, ahora lo que creo que no es tan conocido es como trabajar con GWT-Ext y NetBeans, esto lo digo porque tuve un par de problemas que me retrasaron algunos minutos, les comparto mi experiencia.

Partiendo que tenemos instalado GWT y configurado NetBeans con su plugin y un EntryPoint, debemos hacer lo siguiente para configurar GWT-Ext en nuestro proyecto:

  1. Agregamos el archivo gwtext.jar a nuestro proyecto. Clic derecho sobre Libraries, luego Add JAR/Folder…
  2. Ahora debemos hacer un Clean&Build de nuestro proyecto. Clic derecho sobre el nombre del proyecto y buscamos dicha opción. Esto lo debemos hacer ya que es necesario copiar algunos archivos (hojas de estilo y código JavaScript) dentro de la carpeta js que se encuentra en <Tu_Proyecto>/build/web/<nombr_paquete>/js/ext. Se debe crear la carpeta ext
  3. Copiar los siguientes archivos y directorios, los mismos que se son parte de la descarga de ext2.0.2 (como lo señala GWT-Ext, cuando lo descargamos). Se debe copiar lo siguiente: ext-all.js y las carpetas adapter y resources a la carpeta que se menciona en el punto 2.
  4. Modificar el archivo xxx.gwt.xml agregando las siguientes líneas:

<inherits name=”com.gwtext.GwtExt”/>

<entry-point class=”ec.loxa.client.prbEntryPoint”/> OJO: esto cambia solo lo ubique para mostrar el orden, aunque no estoy seguro de que tenga alguna implicación.

<stylesheet src=”js/ext/resources/css/ext-all.css” />
<script src=”js/ext/adapter/ext/ext-base.js” />
<script src=”js/ext/ext-all.js” />

Y listo tenemos lo necesario para empezar a trabajar, ojo si le das un Clean&Build o un Build a tú proyecto debes volver a repetir los pasos 2 y 3.

Espero que sea de su ayuda.

Ejemplos de aplicaciones GWT

Buscando ejemplos sobre aplicaciones GWT para mis alumnos, me he encontrado con un sitio denominado Google Web Toolkit Applications que muestra algunos ejemplos que han sido desarrollados para un libro con el mismo nombre.

Los he revisado y me parecen bastante interesantes y por supuesto el libro también. Les comento los ejemplos:

  • Gadget Desktop: Una aplicación al estiglo Google Ig, es decir tabs, y gadgets que se pueden ubicar, arrastrar y ordenar según nuestro conveniencia.
  • Multi-Search: Un cliente que permite realizar búsquedas a diferentes motores de búsqueda y que utliza JSONP.
  • Blog Editor: Se conecta a Blogger utilizando REST/GData API.
  • Instant Messenger: Google Talk se podría decir, ilustra el uso de GWT RPC.
  • Database Editor: Herramienta para el manejo de datos, muestra el trabajo con JSON, PHP, REST, GWT RPC con un servlet Java e Hibernate

Ahí se los dejo para que lo revisen y puedan disfrutarlos.

Un cliente para Google Talk programado en JDeveloper

Hace mucho tiempo que no tenía noticias sobre JDeveloper, pero ahora me ha llegado a mi lector RSS una noticia muy interesante.

Lucas Jellema ha creado un cliente para Google Talk utilizando Oracle ADF Faces Rich Client y Active Data Service. El primer concepto lo conocemos todos, pero el segundo me ha resultado interesante, básicamente permite que nuestras aplicaciones se refresquen automáticamente cuando reciben información y nos evitar ubicar algún botón de actualización (se imaginan un chat que tenga que actualizarlo periódicamente dando clic en un botón)

Les dejo el link y esperemos que muy pronto podamos contar con la versión de producción de JDeveloper 11g.

Build a Google Talk Client Using Oracle ADF Faces Rich Client and the Active Data Service

Un par de ejemplos que usan AJAX en JSF WoodStock

Nuevamente revisando los tutoriales de NetBeans, aquellos que se muestran en la página de inicio cuando se abre NetBeans, me encontré con 2 tutoriales en donde se muestra como aplicar AJAX en una aplicación Web, uno de ellos desarrollado utilizando JSF “puro” (sin ningún otro framework) y el segundo desarrollado utilizando Dynamic Faces.

Les comento que el que utiliza Dynamic Faces es un tipo de chat que me parece interesante y el otro se trata de un tutorial en donde se muestra como trabajar con ListBox más conocido como combobox.

Aquí los links:

Saludos.

El camino para aprender JDeveloper y ADF

Revisando uno de los correos que me llegan a través del grupo JDeveloper de Yahoo me he enterado de la existencia de éste post (How Do I Start Learning JDeveloper and ADF)

En donde básicamente se hacen varias recomendaciones del camino a seguir para aprender a utilizar JDeveloper y ADF utilizando, en la mayoría de los casos, material disponible en el Internet.

El primer paso que se menciona, para quienes vienen desde cero, es aprender Java Básico; en éste sentido café lojano puede ayudar ya que estamos preparando un curso OnLine gratuito revisen nuestro entorno virtual de aprendizaje – LabCampus, seguiremos con novedades.