OpenXava 5.0: Desarrollo rápido con Java
miércoles, junio 11, 2014 at 12:28PM
javierpaniza
OpenXava es un marco de trabajo AJAX para desarrollo rápido de aplicaciones web empresariales. Con OpenXava sólo has de escribir las clases del dominio con Java para obtener una aplicación web lista para producción.
Esta versión 5.0 tiene un nuevo estilo visual, incluye navegación entre módulos, identificación de usuario (por tanto ya no necesitas Liferay), colecciones editables en línea (como en una hoja de cálculo), un nuevo editor para adjuntar archivos a tu entidad y muchísimas cosas más.

Te invitamos a que lo descargues y actualices tus aplicaciones OpenXava. Mira las instrucciones de migración.
 

Nuevo estilo visual

La mejor manera de ver el nuevo estilo es echarle un vistazo a la demo.
 

Navegación entre módulos

Por fin, tus aplicaciones OpenXava incluirán menús para acceder a los módulos:


Por tanto, no necesitas usar Liferay para proveer navegación a tu aplicación, un simple Tomcat es suficiente. De todas formas, todavía puedes desplegar tus aplicaciones en Liferay donde estos nuevos menús no se muestran.
 

Identificación de usuario

Ahora tu aplicación le pedirá al usuario que se identifique:

Por tanto, no necesitas usar Liferay para proveer identificación de usuario. De todas formas, si despliegas en Liferay este mecanismo de identificicación de usuario no se usará. Además, lo puedes desactivar si lo deseas, para desarrollo o aplicaciones públicas.
 

Colecciones editables

En OpenXava 5.0 puedes tener colecciones como esta:

Donde el usuario puede modificar cualquier propiedad en cualquier elemento en cualquier momento y donde todos los elementos de la colección se graban a la vez, al mismo tiempo que la entidad principal.
Estas colecciones se definen usando @ElementCollection, una anotación nueva en JPA 2 y son de objeto incrustables (no de entidades).
Para definir un colección de elementos usa @ElementCollection en vez de @OneToMany:
@ElementCollection
@ListProperties("producto.codigo, producto.descripcion," +
    "producto.precioUnitario, cantidad, " +
    "importe[factura.sumaImportes, factura.iva, factura.total]")
private Collection<LineaFactura> lineas;
Y define la clase para la colección de elementos como @Embeddable en lugar de @Entity:
@Embeddable
public class LineaFactura {
La interfaz de usuario generada a partir de este código será:


Puedes ver como estas colecciones soportan propiedades calculadas, referencias, totales, etc.
 

Editor para adjuntar archivos

Hasta ahora para adjuntar archivos a tus entidades tenias que crearte tu propio editor. Esto ya no es necesario, ahora puedes usar el nuevo estereotipo ARCHIVO, así:
@Stereotype("ARCHIVO")
@Column(length=32)
private String trailer;
Para obtener esto:

Se puede configurar para almacenar los archivos en la base de datos o en el sistema de archivos.
 

Otras mejoras

Hemos hecho muchas mejoras en otras áreas:

Arreglos

Aunque esta no es una versión de mantenimiento hemos arreglado algunas cosas:


Descarga OpenXava 5.0

Article originally appeared on javaHispano (http://www.javahispano.org/).
See website for complete article licensing information.