For application development we use spring and hibernate. For rapid application development there are many pitfalls around. Our mission is to provide a framework that handles all default settings and allows us to quickly start with the development tasks our customers are interested in. So the framework tries to support you by:
* Providing a maven based development environment which uses a proven dependency configuration for fast composition of a working base setup.
* Several utilities were needed during application development extending functions from other utility libraries, e.g. Apache commons.
* Providing a module concept for easy setup and extension of a base application
* Providing reusable and extendable components for common tasks such as application setup, user management, security, history and reporting.
* Providing a base UI implementation based on JSF/MyFaces/MyFaces Trinidad
Where to start
For starting have a look at the quick start tutorial. Within this tutorial a small database application is developed using the most important features provided by the framework.
Maven Archetypes for Web Applications
This page contains maven archetypes to help you quickly and easily get started on a web project that uses the jetty plugin. Each archetype allows you to generate a template for your project based on the included sample web application. (This supposes that maven 2.x is already installed in your system)
The WaveMaker platform consists of two components: WaveMaker Visual Ajax Studio™ for developing rich internet applications and WaveMaker Rapid Deployment Server™ for deploying applications into a standard and secure Java environment.
This article demonstrates a brand new open source library for unit testing, called Unitils. Unitils helps you in writing simple and maintainable unit tests with JUnit or TestNG . It glues together some widely used test libraries like DbUnit and EasyMock and offers integration with Spring and Hibernate . Unitils encourages applying good practices and unit testing guidelines. The ideas behind the code are based on the authors' concrete experience on enterprise projects.
Unitils offers following features
* Equality assertion through reflection, with options like ignoring Java default/null values and ignoring order of collections
* Support for database testing involving test data management with DbUnit, automatic maintenance of unit test databases and automatic constraints disabling
* Hibernate integration features such as session management and testing the mapping with the database
* Integration with Spring, involving ApplicationContext management and injection of spring managed beans
* Integration with EasyMock and injection of mocks into other objects
PathProxy is a design pattern for persisting complex relationships without cluttering up your database. In this article JavaWorld contributor Matthew Tyson introduces his PathProxy pattern and walks you through an example application implementation based on Spring, JSF, and JPA/Hibernate.
When using JUnit in Spring there are several features added that many developers are not aware of.
First, if you are including the Spring Context in your tests, it becomes an Integration Test, no longer a Unit Test.
this module makes the integration of spring-annotation and JSF really easy.
* It registers automatically a VariableResolver in the JSF stack to enable the use of the spring beans as managed beans
* it adds 2 (two) more scopes to spring framework: flash and conversation
* it registers a navigation handler in the JSF stack to enable you to write less code
* it adds some annotations to make it easier to write JSF code
Basegen is an Open Source MDA code generation tool based on AndroMDA. It can quickly generate an entire application from UML model in a simple way. Basegen uses state-of-art open source technologies like: Maven, Subversion, MyFaces, Spring, Hibernate, JasperReports, Acegi Security.
We have used Spring Roo in a web project and show how we generated an early prototype and transistioned to early development and then to production code.
Pax Construct provides a Swiss Army® knife for OSGi that helps you rapidly create, build, manage and deploy many types of OSGi bundles. The core functionality is provided by a flexible Maven2 plugin that enhances and streamlines the Maven build process for OSGi, along with intelligent archetypes that adapt according to your needs.
Unix and Windows scripts are available to further reduce the need to remember (and type) long command strings. These scripts come with basic help text and can bootstrap themselves from an empty system.
You can use Pax Construct to create a simple first bundle in less than a minute, all the way up to managing a Spring Dynamic Modules for OSGiTM system.
"Openutils is a collection of small java libraries, utilities and extensions for common frameworks and tools used in j2ee projects.
Most of the code comes from projects developed at
openmind http://www.openmindonline.it"
Very interesting: Mavenised good approach for Spring testing for both JUnit4 and TestNG, wired with dbunit.
OpenSwing is an open-source suite of advanced graphics components based on Swing toolkit: these components are more sophisticated of those provided with Swing and can be manipolated directly inside the UI designer of the IDE.
It is also a framework that provides data binding mechanism between components and data model, based on the MVC paradigm. Data model is based on Java Beans (POJOs) and it is supported in all OpenSwing components, such as Grid control or components container.
Metawidget takes your domain objects and automatically creates User Interface components for them, saving you handcoding your UIs and leaving you to concentrate on stitching together your application.
As much as possible, Metawidget does this without introducing new technologies. It inspects, at runtime, an application's existing back-end architecture (such as JavaBeans, annotations, XML configuration files) and creates components native to its existing front-end framework (such as Swing, Java Server Faces, Struts or Android).
Metawidget does not hide the power of your existing User Interface framework from you and guarantees that your investment in its technology and knowledge is as valid as always. The LGPL open source license allows the use of Metawidget in open source and commercial projects.
Java framework for CRUD and Validation.
Crank Google Group for Questions and Such
Crank is a master/detail, CRUD, and annotation driven validation framework built with JPA, JSF, Facelets and Ajax. It allows developers to quickly come up with JSF/Ajax based CRUD listings and Master/Detail forms from their JPA annotated Java objects.
Crank uses a lot of the new JSF features from Facelets, Ajax4JSF, etc. that will be used in JSF 2.0. Crank is a use case analysis of what is possible with the new JSF 2.0 stack.
The validation piece does server-side validation, Ajax validation or just emitted JavaScript validation based on Java annotations, property files, XML files, or database tables. Currently works with JSF, Spring MVC and Spring Webflow.
JMesa is a dynamic HTML table that allows you to filter, sort, paginate, export and edit your data however you need to. What you will find here is a carefully thought out API that is very easy to use and can be modified for your own needs. Note: JMesa requires JDK1.5 or above.
jBPM (Java Business Process Management) is an open source Java framework for managing workflows.
This project provides:
* A simple standalone Eclipse project for checkout and experimentation
* Example jBPM integration with Hibernate, Spring, and Oracle XE (a free download)
* Simple JUnit tests for leaning by doing
* A companion powerpoint presentation in the downloads section
* How-Tos in this Wiki