OpenXava es un marco de trabajo para
desarrollo rápido de
aplicaciones de gestión con Java o Groovy. Es fácil de aprender y rápido para desarrollar. Al mismo tiempo es extensible y personalizable, además el código de la aplicación se estructura desde un punto de vista orientado a objetos puro. Por lo tanto, puedes enfrentarte a aplicaciones complejas con él.
La aproximación de OpenXava al desarrollo rápido no es por medio de usar entornos visuales (como Visual Basic o Delphi), o scripting, como PHP. Más bien, el enfoque de OpenXava es dirigido por el modelo (
model-driven), donde el corazón de tu aplicación son clases Java que describen tu problema. De esta forma conseguimos productividad sin utilizar código espagueti.
La nueva versión de OpenXava,
OpenXava 4.1, añade soporte para
JSR-303, el estándar Java para la validación, además cuenta con algunas mejoras interesantes en la interfaz de usuario de la lista y las colecciones.
El soporte del estándar Bean Validation (JSR-303), junto con los ya soportados JPA 2.0 (JSR-317) y Dependency Injection (JSR-330), permiten mover el código tu aplicación JBoss Seam o Spring (al menos las entidades) a OpenXava y así obtener una aplicación AJAX potente a partir de tu código ya existente sin apenas esfuerzo.
La mejor forma de saborear las nuevas características de OpenXava 4.1 es
descargándolo y siguiendo la guía de
inicio rápido.
Abajo tienes algunas de las principales novedades de OpenXava 4.1.
Bean Validation (JSR-303)OpenXava tiene soporte completo del estándar Java para validación:
Bean Validation JSR-303. Podemos definir nuestras propias restricciones en nuestras entidades como se explica en la especificación
Bean Validation, y OpenXava las reconocerá, mostrando los mensajes de error correspondientes al usuario. De esta forma, si escribes una clase como la siguiente:
package org.openxava.test.model
import org.openxava.model.*;
import org.openxava.annotations.*;
import javax.persistence.*;
import javax.validation.constraints.*; // From JSR-303
@Entity
class Artist extends Identifiable {
@Column(length=40) @Required
String name
@Max(99l) // @Max is a build-in constraint of JSR-303
Integer age
}
cuando trates de añadir un nuevo objeto OpenXava aplicará la validación:

Más posibilidades para la lista y las coleccionesOpenXava 4.1 añade nuevas posibilidades para el usuario, tal como poder ordenar por varias columnas o añadir sumatorios:

Éstas son sólo algunas de las nuevas características, puede ver la lista completa en el
changelog.
Descarga OpenXava 4.1 y pruébalo