Hace aproximadamente un año publicamos en javaHispano un tutorial básico sobre Java EE. Ese tutorial lo usé yo dentro de un curso universitario de introducción a la programación web en una titulación de ingeniería informática. Juan Diéz-Yanguas, uno de los alumnos que tomó el curso, fue el que desarrolló el mejor proyecto dentro de la asignatura. Una vez concluida la propia asignatura, él continuó mejorando el proyecto.
El proyecto se trata de una tienda online. La tienda cuenta con una interfaz de administración que permite hacer altas y bajas de productos, así como ver informes de las ventas. Por supuesto, también cuenta con una interfaz de usuario final que permite realizar compras. Los usuarios finales pueden registrarse en la web, enviándose un e-mail para confirmar el registro. También se les envía un e-mail cada vez que realiza una compra resumiendo lo que han comprado.
La aplicación no sólo pone en práctica todo lo cubierto en el tutorial básico de Java EE sino que añade nuevos conceptos como uso de Java Mail, cómo realizar uploads con imágenes, realiza una validación fuerte de los datos y se protege contra ataques XSS e inyecciones SQL empleando la librería ESAPI, y realiza validación de los campos de los formularios en el cliente empleando técnicas AJAX, entre otros.
La aplicación puede emplear como mecanismo de persistencia la base de datos MYSQL o (configurando el descriptor de despliegue) emplear un conjunto de ficheros en el disco duro. También se ha hecho bastante énfasis en el desarrollo de la aplicación en no cometer errores de concurrencia.
Además de desarrollar toda la aplicación, Juan se ha molestado en documentarla bastante bien, a través de un tutorial bastante extenso (60+ páginas donde explica el funcionamiento de la aplicación, no desde el punto de vista del usuario sino desde el punto de vista de un programador) más un video. Y todo el código de la aplicación es opensource.
Creo que toda esta documentación, que podéis encontrar en el blog de Juan, es un excelente recurso para cualquier persona que esté comenzando a programar en Java EE. Y sin duda se lo recomiendo a cualquiera que haya leído el tutorial básico de Java EE y quiera dar un paso más en su formación. Aquí os dejo enlaces a toda la documentación:
Ejemplo Java EE: Una tienda online from Juan on Vimeo.