openxava
Features

High productivity

You only write the code for your data structure and business logic with Java. You do not write HTML, JavaScript, CSS, SQL, etc. The user interface and the database logic are automatically provided.

Short learning curve

If you know basic Java and JPA you're already an OpenXava developer, you don't need any more to create complete applications. The OpenXava bundle is prepared for a rapid startup.

Full-featured applications

Modern web Single-Page Applications (SPA). List mode with paging, ordering, filtering, adding / removing / moving columns, PDF reports, export/import to Excel, cards format, charts, etc. Detail mode with tabs, frames, dialogs, editors for references and collections, responsive layout, maps, discussion threads, photo gallery, file upload, dashboards, etc.

Flexibility

Flexible enough to solve any case you'll face developing a business application. For the user interface OpenXava has a bunch of annotations to define the layout of the view in a high abstraction level, this is enough for most cases. For the behavior it has a controller framework to define your own behavior for a certain part of the application, or even for overwriting the standard behavior of the whole application. Moreover, you can modify the way any part of the user interface is generated by defining your own editors for certain types or properties. Finally, you can program by hand the user interface of any module of your application using JSP, HTML or JavaScript.

Mobile user interface

In addition to the classic web user interface for desktop you can get a mobile user interface for your application from the same code.

Use your favorite platform

Browsers: Chrome, Firefox, Edge and Safari. Databases: Any supported by Hibernate, that is Oracle, DB2, AS/400, Informix, PostgreSQL, MySQL, MS SQL Server and practically all relational databases. Operating systems: Any with Java 8 (or better) support, that is Windows, Linux, Mac, Unix, AS/400, z/OS, etc. Application servers: Any with support for Servlets 3.1 (or better), including Tomcat, JBoss, WebSphere, Glassfish, WebLogic, etc.

Security

OpenXava complies with OWASP Top Ten, which means it meets the highest security standards for web applications. In fact, OpenXava passes the OWASP ZAP web security test 100%, without any critical, medium, or low level alerts. In addition, we frequently release versions where we fix security bugs and update dependencies to avoid using vulnerable third-party libraries.

First class IBM i (AS/400) support

The first production applications developed with OpenXava were for AS/400, using the AS/400 as the database with the application server in Linux or Windows, or even running the OpenXava applications inside the AS/400 (using WebSphere). In all cases the OpenXava applications used the tables designed by the RPG programmers as is, so the RPG programs still could work against the same data. Currently, many public administrations and banks around the world use OpenXava applications against AS/400 in production. It means that OpenXava is optimized to work nicely against the AS/400, moreover the team behind OpenXava has the know-how to face mapping AS/400 databases with Java technology, not so easy because RPG programmers do not use foreign keys, nulls, they use overlapped fields to chain different tables, fixed-length fields, and many other non-relational style practiques.

Open source

LGPL license that allows you to develop commercial applications without paying any fees.

Multilingual

The standard labels and messages included in OpenXava are in English, Spanish, German, French, Chinese, Russian, Japanese, Portuguese, Catalan, Indonesian, Italian, Polish, Serbian and Swedish. Moreover, it's pretty easy to add a new language.

Popular

300,000 downloads. 60 authors. Thousands of threads in the forums. Hundreds of applications developed. Hundreds of professionals in LinkedIn with OpenXava experience.

Exhaustive documentation

Complete Reference Guide in English and Spanish. Free online course in English and Spanish where an invoicing application is developed from scratch. Book in English and Spanish available from Amazon. Video-course in English and Spanish on YouTube.

Quality support

Free support in community forums, though they have thousands of threads all questions are answered. Moreover, there is professional support available.

Based on Java standards

Thus you can migrate your current Java code easily to OpenXava, and vice versa. You can use any Java tool for OpenXava. Your Java developers are already OpenXava developers. OpenXava projects are Maven-based. You can use IntelliJ, NetBeans, Eclipse or Visual Studio Code as IDE. OpenXava works nicely with Java 8, 11, 17 and 21. OpenXava is based on Java Persistence API (JPA), Dependency Injection for Java and Bean Validation standards. OpenXava supports: JSR-338, JSR-317, JSR-303, JSR-330, JSR-220, JSR-153, JSR-311, JSR-339 and JSR-370.

Integration

Many developers have integrated their OpenXava applications with other enterprise technologies and tools such as Talend, Bonita Open Solution, Ehcache, Spring Framework, Spring Security, Spring Scheluding, Quartz, Groovy, IntelliJ, Grafana, Pentaho, Docker, etc.

Active project

6 releases/year, half of them maintenance releases (just with bug fixes). Since 2005.

Español