OpenXava

OpenXava
OpenXava
[[Image:]]
Demostración de OpenXava
Desarrollador
Gestión 400/Comunidad
Información general
Última versión estable 4.1
15 de febrero de 2011; hace 8 meses (2011-02-15)
Género framework de aplicaciones web
Sistema operativo Multiplataforma
Licencia LGPL
Idiomas inglés
En español ?

OpenXava es un marco de trabajo de código abierto para desarrollar aplicaciones de gestión de una forma efectiva. Permite el desarrollo rápido y fácil de mantenimientos y listados pero, a su vez, es lo suficientemente flexible para desarrollar complejas aplicaciones de gestión de la vida real como contabilidad, facturación, gestión de personal, nóminas, gestión de almacenes, etc.

OpenXava permite definir aplicaciones simplemente con POJOs, JPA y anotaciones de Java 5.

Actualmente OpenXava genera aplicaciones web Java (J2EE/JavaEE), que pueden ser desplegadas en cualquier portal Java (JSR-168) como una aplicación de portlets.

La esencia de OpenXava es que el desarrollador define en vez de programar, y el marco provee automáticamente la interfaz de usuario, el acceso a los datos, el comportamiento por defecto, etc. De esta manera, todo lo común se resuelve fácilmente, pero siempre el desarrollador tiene la posibilidad de programar manualmente cualquier parte de la aplicación, de esta forma es lo bastante flexible para resolver los casos particulares. OpenXava está basado en el concepto de componente de negocio.

Contenido

Componente de negocio frente a MVC

Un componente de negocio incluye todos los artefactos de software necesarios para definir un concepto de negocio. OpenXava es un marco de trabajo orientado a componentes de negocio porque permite definir toda la información sobre un concepto de negocio en un único sitio. Por ejemplo, para definir el concepto de Factura, en OpenXava se usa un único archivo (Factura.java), y toda la información sobre el concepto de factura (incluyendo estructura de datos, disposición de la interfaz de usuario, mapeo con la base de datos, validaciones, cálculos, etc) se define ahí. En un marco de trabajo MVC la lógica de negocio (el modelo), la interfaz de usuario (la vista) y el comportamiento (el controlador) se definen separadamente. Este tipo de marcos es útil si la frecuencia de cambios en la lógica y estructura de datos es baja y la posibilidad de cambiar la tecnología de intefaz de usuario o acceso a datos es alta.

En OpenXava para añadir un nuevo campo a una Factura el desarrollador solo necesita tocar un solo archivo: Factura.java

Pero, los marcos de trabajo MVC son malos cuando los cambios a la estructura y los datos son muy frecuentes (como en caso de las aplicaciones de gestión). Imaginemos un cambio más simple, añadir un nuevo campo a una Factura, en un marco MVC, el desarrollador tiene que cambiar la interfaz de usuario, la clase del modelo, la tabla de la base de datos, y además si el desarrollador usa los patrones de diseño J2EE tendrá que cambiar su clase DTO, el SessionBean de Fachada, el mapeo del EntityBean, etc.

Otra ventaja de los marcos orientados a componentes de negocio es la distribución del trabajo en los equipos. Es fácil hacer una distribución orientada a la lógica de negocio (facturas para un desarrollador, Albaranes para otro, etc), y no por capa tecnológica (lógica de negocio para un desarrollador, interfaz de usuario para otro, etc).

Características

Algunas característistica de OpenXava son:

  • Alta productividad para aplicaciones de gestión.
  • Curva de aprendizaje corta y sencillez de uso.
  • Suficientemente flexible como para crear aplicaciones sofisticadas.
  • Es posible insertar nuestra propia funcionalidad en cualquier punto.
  • Basado en el concepto de componente de negocio.
  • Genera una aplicación J2EE completa, incluyendo la interfaz de usuario (AJAX).
  • Soporta cualquier servidor de aplicaciones (Tomcat, JBoss, WebSphere).
  • Soporta JSR-168: Todos los módulos OpenXava también son portlets estándar.
  • Soporte completo de EJB3 JPA
  • Está probado con los portales: JetSpeed 2, WebSphere Portal, Liferay y Stringbeans.
  • Fácil integración de informes hechos con JasperReports.
  • Licencia LGPL.
  • Todas las etiquetas y mensajes están en inglés, español, alemán, polaco, indonesio, francés, italiano, chino y catalán

Véase también

  • J2EE

Enlaces externos


Wikimedia foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Mira otros diccionarios:

  • OpenXava — Screenshot  [[Image:]] Demonstration of the OpenXava Stable release 4.2 / June 17, 2011; 5 months ago (2011 06 17) …   Wikipedia

  • OpenXava — Maintainer Javier Paniza Aktuelle Version 4.1 (15. Februar 2011) Betriebssystem Plattformunabhängig Programmier­sprache Java …   Deutsch Wikipedia

  • Plain Old Java Object — POJO is an acronym for Plain Old Java Object, and is favoured by advocates of the idea that the simpler the design, the better.The name is used to emphasize that the object in question is an ordinary Java Object, not a special object, and in… …   Wikipedia

  • Java Persistence API — The Java Persistence API, sometimes referred to as JPA, is a Java programming language framework that allows developers to manage relational data in Java Platform, Standard Edition and Java Platform, Enterprise Edition applications.The Java… …   Wikipedia

  • Comparison of web application frameworks — This is a comparison of notable web application frameworks. Contents 1 General 1.1 Perl 1.2 PHP 1.3 Java 1.4 Python …   Wikipedia

  • Сравнение каркасов веб-приложений — Это сравнительная таблица фреймворков веб приложений. Содержание 1 Фреймворки 1.1 ASP.NET 1.2 C++ 1.3 ColdFusion Markup Language (CFML) …   Википедия

  • PHP-Nuke — Original author(s) Francisco Burzi Stable release 8.2 / May 22, 2009; 2 years ago (2009 05 22 …   Wikipedia

  • Drupal — Drupal …   Wikipedia

  • OpenACS — Developer(s) OpenACS community Stable release 5.6.0 …   Wikipedia

  • Midgard (software) — For other uses, see Midgard (disambiguation). Midgard AJAX inline editing of content in Midgard …   Wikipedia

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”