En primer lugar has de crear un nuevo proyecto Maven, con las siguientes configuraciones, pero seleccionando 7.6.2 para el campo Version (nunca selecciones 7.X.X para versión):
Ahora tu proyecto ya está listo para empezar a escribir código:
Desarrollar es muy fácil: solo has de añadir entidades para ir haciendo crecer tu aplicación. Empezaremos con una versión simplificada de Cliente con solo numero y nombre.
Abre la carpeta src/main/java, allí selecciona el paquete com.tuempresa.facturacion.modelo, pulsa el clic derecho y elige:
Después teclea Cliente como nombre de clase y presiona enter.
Fíjate que la C de Cliente está en mayúscula, esto es muy importante, en Java todas las clases empiezan con mayúscula.
El código inicial que IntelliJ proporciona para Cliente es muy simple:
package com.tuempresa.facturacion.modelo;
public class Cliente {
}
Ahora, te toca a ti rellenar esta clase para convertirla en una entidad adecuada para OpenXava. Solo necesitas añadir la anotación @Entity y las propiedades numero y nombre:
package com.tuempresa.facturacion.modelo;
import javax.persistence.*;
import org.openxava.annotations.*;
import lombok.*;
@Entity // Esto marca la clase Cliente como una entidad
@Getter @Setter // Esto hace los campos a continuación públicamente accesibles
public class Cliente {
@Id // La propiedad numero es la clave. Las claves son obligatorias (required) por defecto
@Column(length=6) // La longitud de columna se usa a nivel UI y a nivel DB
int numero;
@Column(length=50) // La longitud de columna se usa a nivel UI y a nivel DB
@Required // Se mostrará un error de validación si la propiedad nombre se deja en blanco
String nombre;
}
Con esto tienes el código suficiente (justo una clase) para ejecutar tu aplicación. Hagámoslo.
En la pestaña de Maven, selecciona facturacion > Lifecycle, haz doble clic en package y espera un rato.
Luego, en el paquete com.tuempresa.facturacion.run haz clic derecho en facturacion y pulsa el botón Run'facturacion.main()':
Espera hasta que la consola muestre un mensaje diciendo "Aplicación iniciada", como este:
Ya tienes tu aplicación ejecutándose. Para verla, abre tu navegador favorito (Chrome, Firefox, Edge o Safari) y ve a la siguiente URL:
http://localhost:8080/facturacion
Estás viendo tu aplicación por primera vez. Para empezar pulsa en el botón Iniciar sesión:
Ahora, introduce admin/admin y pulsa en Entrar:
Después, pulsa en la parte de la izquierda se mostrará una lista de módulos, escoge Clientes:
Usa el módulo Clientes para crear nuevos clientes, simplemente introduce el número y el nombre y pulsa Grabar.
Pulsa en Lista para ver los clientes que has creado. Enhorabuena, tienes tu primera aplicación OpenXava funcionando.
A partir de ahora, desarrollar con OpenXava es muy fácil. Simplemente, escribes una clase y ya puedes ver el resultado en el navegador. Creemos una entidad para Producto.
Selecciona el paquete com.tuempresa.facturacion.modelo y pulsa en New >Java Class:
Después teclea Producto como nombre de clase y presiona enter.
Escribe el siguiente código para Producto:
package com.tuempresa.facturacion.modelo;
import javax.persistence.*;
import org.openxava.annotations.*;
import lombok.*;
@Entity @Getter @Setter
public class Producto {
@Id @Column(length=9)
int numero;
@Column(length=50) @Required
String descripcion;
}
Ahora, pulsa el botón Run, esto parará la aplicación y la volverá a iniciar:
Para ver tu nueva entidad en acción abre tu navegador y ve a la URL:
http://localhost:8080/facturacion/modules/Producto
Después de identificarte con admin/admin obtendrás:
Sí, ya tienes un nuevo módulo en marcha, y solo has tenido que escribir una simple clase. Ahora puedes concentrarte en hacer crecer tu aplicación.
¡Enhorabuena! Has creado tu primera aplicación OpenXava. Si no ha sido así y has tenido algún problema con el ejemplo de arriba, pregunta en el foro:
Te ayudaremos a resolver cualquier dificultad.
Esta guía de primeros pasos usando IntelliJ, es la lección 1 de un curso completo de OpenXava. El resto del curso esta en Eclipse y te enseñará cómo desarrollar aplicaciones empresariales con OpenXava, así como con otras tecnologías, herramientas y marcos de trabajo Java. Desarrollaremos paso a paso una aplicación completa desde cero. Se trata de una pequeña aplicación de facturación con facturas, clientes, productos y así por el estilo. Esta aplicación es una mera excusa para aprender algunos casos típicos en aplicaciones de gestión. Puedes aplicar todo lo que aprendas con esta aplicación a cualquier otra aplicación de gestión en cualquier otro dominio.
Este es el contenido del curso:
Ya estás listo para pasar a la siguiente lección, sin embargo deberías considerar adquirir un poco de conocimiento base, tal como:
¿Quieres usar Maven o Visual Studio Code? ¿Quieres ir contra MySQL, PostgreSQL, Oracle, Microsoft SQL Server, AS/400, Informix, Db2 o Firebird? ¿Quieres una guía de referencia detallada? Echa un vistazo a la documentación de OpenXava, que incluye todo esto y mucho más.
¿Preparado? Ve a la lección 2