Creando un demo con Spring Roo

Aprovechando que he instalado el paquete STS de Spring para desarrollar aplicaciones con Spring MVC, me he decidido a hacer una pequeña demo con Spring Roo.

Spring Roo es una herramienta de desarrollo rápido de aplicaciones o RAD, que permite el desarrollo de aplicaciones Java EE de forma muy productiva y cómoda para el desarrollador.

Así que allá vamos. Basándome en el tutorial http://static.springsource.org/spring-roo/reference/html/beginning.html intento explicar aquí el mismo ejemplo pero adaptado a mi configuración del equipo (utilizando Eclipse, Maven…)

En este artículo vamos a construir paso a paso y de manera rápida una aplicación web utilizando Spring Roo.

Antes de empezar es necesario descargar Spring Roo y descomprimirlo en algún lugar. Después cuando le demos a crear proyecto Spring Roo tendremos que seleccionar esta carpeta.

Este diagrama representa de manera simplificada el dominio del problema

Creando el proyecto

La configuración que tengo en mi equipo y las aplicaciones que tengo instaladas son:

–          Eclipse Juno

–          Spring Roo descargado

–          JDK instalado

–          Plugins de eclipse M2Eclipse, Spring Tool Suite

–          PostgreSQL o cualquier otra BD relacional

–          Xampp En realidad con Tomcat sería Suficiente

–          Tengo configurado Maven para desplegar directamente en  Tomcat  (Está en un post anterior 😉

Seguir leyendo “Creando un demo con Spring Roo”

Desarrollando un portlet para Liferay utlizando Spring framework

Ya hemos visto como desarrollar portlet para Liferay y también como desarrollar una pequeña aplicación con Spring e Hibernate. ¿Por qué no unirlo todo? Creo que sería una gran idea poder realizar un portlet para Liferay utilizando Spring e Hibernate. No, no soy un visionario, ni un gurú. Ya existen miles de portlet así, pero a mí me encanta aprender y creo que será genial aprender cómo se realiza un portlet para Liferay utilizando Spring e Hibernate. Creo que mi SEO se verá resentido con eso no poner siempre lo mismo 😉

Para empezar vamos a realizar un pequeño “hello world” para irnos haciendo con el entorno, que aun siendo conocido (como es el caso de Liferay IDE) siempre es conveniente comprobar que todo funciona antes de atascarnos en algo más complejo.

Antes de empezar vamos a dejar claro que es la Dependencia de Inyección. Según la Wikipedia es un patrón de diseño orientado a objetos, en el que se suministran objetos a una clase en lugar de ser la propia clase quien cree el objeto.

Para que nos quede más claro en el Libro “Portlets in Action” nos ponen un ejemplo muy aclaratorio que voy a “traducir” a continuación:

Imaginemos que tenemos entre manos una aplicación para un ecommerce, esta aplicación tiene estos objetos definidos (puede que tenga muchos más, pero nos centraremos en estos de momentos).

  • OrderHandler: Un componente de la capa de presentación es responsable de manejar las órdenes cursadas por los clientes.
    Depende OrderService para guardar las ordenes entregadas (submitted)
  • OrderService: Un componente que contiene la lógica de negocio para guardar un orden en la base de datos. Depende OrderDAO para guardar la información de la orden en la base de datos.
  • OrderDAO: Un objeto de acceso a datos que es responsable de la interacción con la base de datos para guardar la información de pedido enviado por el cliente.

Este sería el esquema de dependencias de las clases que hemos expuesto aquí

Seguir leyendo “Desarrollando un portlet para Liferay utlizando Spring framework”

Configurar maven para hacer deploy en Tomcat

Ya hemos hablado aquí de utilizar Maven dentro de eclipse con el plugin m2. EL problema que tenía era que al desarrollar una aplicación web y hacer deploy se me generaba un archivo .war en el proyecto. Este archivo tenía que copiarlo en el directorio webapps de Tomcat para poder probar. Esto es un suplicio así que buscando un poco por Internet he encontrado una solución.

Si todo lo anterior te ha sonado a chino mandarín, no te preocupes, acabo de releerlo y a me tampoco me siena bien 😉

¿Cuál es el problema?

Antes cuando realizaba una aplicación web utilizando maven y quería probarla lo que hacía era generar un archivo .war en una carpeta dentro del proyecto. Iba a mano con el explorador de Windows copiaba ese archivo.war y lo pegaba dentro de la carpeta webapps que está en Tomcat. Esto era una pérdida de tiempo cada vez que quería probar algo.

Solución

Utilizar Maven-Tomcat plugin para que con el comando mvn tomcat:deploy

Seguir leyendo “Configurar maven para hacer deploy en Tomcat”

Usar Maven desde eclipse M2eclipse

En el post anterior hablamos de Maven y de como utilizarlo. Ahora en este post vamos a explicar como integrar Maven dentro de Eclipse para poder trabajar cómodamente.

El proyecto m2eclipse proporciona soporte para Maven desde dentro de Eclipse. Éste es un “plugin” que ayuda a salvar las diferencias entre Maven y Eclipse.

Instalar el plugin M2ecipse

Una de las opciones es usar el eclipse marketplace(Help->eclipse marketplace), buscar el plugin e instalarlo

Seguir leyendo “Usar Maven desde eclipse M2eclipse”

Como dar más memoria a eclipse

Últimamente estoy haciendo un uso intensivo de Eclipse y un par de veces se me ha cerrado de manera “inesperada”, sin mensaje de error ni nada. Creo que una de las veces recibí  al menos el mensaje de error: “Out of memory” (si no recibimos el error, seguramente podremos verlo en el archivo .log).

Buscando en Internet he visto que es “normal”

¿que fue lo que pasó? Es simple, la máquina virtual de java asigna determina cantidad de memoria como máximo para determinadas estructuras internas, y al ser esta cantidad insuficiente, provocó un error y se cerró la aplicación.

Aquí un par de soluciones al problema

Seguir leyendo “Como dar más memoria a eclipse”