OpenXava
# OpenXava

OpenXava ist ein quelloffenes Webframework zur Erstellung von Webanwendungen mit Java. Lizenziert ist es unter der GNU Lesser General Public License. Das Grundkonzept basiert auf der Idee von Business Komponenten. Seit 2004 wird das Projekt bei SourceForge verwaltet. OpenXava wird seit Jahren aktiv in produktiven Anwendungen eingesetzt und intensiv weiterentwickelt. Für den Einsatz benötigt man Java 5 oder höher.

## Ziel

Ziel ist es, dem Entwickler ein Framework zur Verfügung zu stellen, mit dem es schnell und einfach möglich ist Business Webanwendungen zu erstellen. Datenstruktur, Businesslogik und Anzeigeinformationen werden an einer zentralen Stelle definiert. Anhand dieser Informationen wird automatisch die Benutzeroberfläche generiert. Durch den Ansatz von OpenXava kann sich das technische Design an den fachlichen Vorgaben anlehnen. Es gibt beispielsweise eine Klasse „Kunde“, in der alle relevanten Informationen hinterlegt sind. Die Hinterlegung erfolgt mit Hilfe von Java Annotations. Ab der Version 4.6 kann auch Groovy für die Modellierung eingesetzt werden und die Jakarta Persistence API (JPA) 2.0 wird unterstützt.

## OpenXava vs. Ruby on Rails

Durch die hohe Produktivität ist OpenXava eine auf Java basierende Alternative zu Ruby on Rails. Das Prinzip „Konvention vor Konfiguration“ gilt hier ebenfalls. Hinsichtlich Umsetzungsgeschwindigkeit steht Openxava Ruby on Rails in nichts nach.

## Funktionalität

Hier einige wichtige Funktionen und Eigenschaften von OpenXava

* Java-Open-Source-Projekt seit November 2005
* hohe Produktivität bei der Entwicklung von JAVA Enterprise Anwendungen
* kurze Einarbeitungszeit für Entwickler
* flexibel genug um anspruchsvolle Anforderungen abzudecken
* die Anwendung kann an jeder Stelle um eigene Funktionen erweitert werden
* keine Codegenerierung
* basiert auf dem Konzept von Business Komponenten
* automatische Generierung der Benutzeroberfläche
* volle Ajax-Unterstützung
* Getestet auf einer Vielzahl von Applikationsserver (u. a. Tomcat, JBoss, WebSphere)
* Unterstützt den JSR-168
* Diverse Persistierungsmöglichkeiten, EJB3 JPA, Hibernate oder EJB2 CMP
* Getestet mit folgenden Portalen: JetSpeed2, WebSphere Portal, Liferay und Stringbeans
* mit JasperReports können Reports im System hinterlegt werden
* OpenXava ist unter LGPL-Lizenz
* in folgenden Sprachen ist eine Dokumentation vorhanden: englisch, französisch, russisch, chinesisch und spanisch
* derzeit sind Texte und Fehlermeldungen im System in folgende Sprachen übersetzt: englisch, spanisch, chinesisch, deutsch, polnisch, indonesisch, französisch, italienisch, serbisch und schwedisch

## Konkurrenz

JVx, Naked Objects for Java, Roma Meta Framework, Trails, JMatter

