This article needs additional citations for verification. (March 2018) (Learn how and when to remove this template message)
2.7 / January 12, 2018
|License||Apache License 2.0|
JVx Framework (or JVx - Enterprise Application Framework) is an open source software framework for the Java platform. JVx facilitates the development of professional and efficient database applications, in a short time and using little source code.
The framework's architecture is based on the multitier architecture model for the development of software systems. Building on a three-tier architecture and following the dependency inversion principle JVx allows for easy development of efficiently maintained applications. The framework provides full support for all tiers.
- A database, or alternatives such as the file system, can be used as data tier.
- The application tier is provided via an integrated communication server. This server supports the administration of sessions and the application logic.
- The presentation tier is technology-independent and can be used with various technologies, such as Swing, SWT, Vaadin, etc.
JVx aims to save developers time so that they can focus their efforts on application-specific tasks. Technological hurdles are cleared by the framework. Less time is spent on simple tasks, such as the creation of templates for master data. JVx reduces the overall development effort by providing solutions for repetitive tasks.
JVx offers the following features, among others:
- Automatic list boxes based on the database model
- Generic and technology-independent user interface
- Uniform active model for all GUI components
- Data and database independence
- Data is not loaded until it is accessed (lazy loading)
- Server side session and object management
- Internationalization at the component level
- Complete application framework
- Synchronous and asynchronous communication
- Communication using client and server actions
- Up- und download of data/files
- Integrated picture management
For the presentation layer (client) the following implementations exist
- Swing (Application, Applet Java Web Start – JNLP)
- Android (native)
- iOS (native)
An experimental implementation is available for Adobe Flex.
Several enhancements exist for JVx that result in a high level of comfort for use in enterprise applications. These include:
- Vaadin based online help
- JVxEE for usage with JPA and Java EE
- AddOns for use with Android
- JVx connector for usage with Vert.x