SpringContracts is a Java
Solution for Design By
with seamless integration into the Spring Framework.
you the freedom to notate Contracts - Preconditions, Postconditions and
Invariants - in a flexible way.
(based on Annotations or by an external Notation)
you configure the behaviour of Contract Validation via Spring's
a pluggable way to switch the Language in which to describe the
with a build in support for Expression Language (Commons EL) with
extensions due to first order logic
(all quantor, exist quantor, implication)
||SpringContracts 0.3 is available for download.
||Support for BeanShell / Java as specification language available in current dev branch.
Will come with the next Release.
Release will come with support for contract validation for constructors
due to Load Time Weaving (using AspectJ-AOP - available in current dev
Release will come with support for contract validation of objects,
which are created outside Spring's ApplicationContext (i.e. ad hoc
instantiations of domain objects) due to Load Time Weaving
||Release 0.2 available. Full
support for external Contracts, OGNL
Release of SpringContracts (Release
||SpringContracts is now Open Source, hosted on SourceForge.