Skip to content
This repository has been archived by the owner on Sep 10, 2021. It is now read-only.
/ oval Public archive

OVal - the object validation framework for Java

License

Notifications You must be signed in to change notification settings

sebthom/oval

Repository files navigation

Development of OVal has been stopped. Please migrate to a Bean Validation implementation, such as Apache BVal or Hibernate Validator.

OVal - the object validation framework for Java

Build Status License Maintainability Test Coverage Changelog Maven Central

  1. What is it?
  2. Java Compatibility
  3. Binaries
  4. User Guide
  5. Articles about OVal
  6. Projects using OVal
  7. License

What is it?

logo

OVal is a pragmatic and extensible validation framework for any kind of Java objects (not only JavaBeans). Constraints can be declared with annotations (@NotNull, @MaxLength), POJOs or XML.

Custom constraints can be expressed as custom Java classes or by using scripting languages such as JavaScript, Groovy, BeanShell, OGNL or MVEL.

Besides field/property validation OVal implements Programming by Contract features by utilizing AspectJ based aspects or via Spring AOP. This for example allows runtime validation of constructor/method arguments.

Java Compatibility

OVal 1.x requires Java 5 or newer

OVal 2.0 or higher requires Java 8 or newer

Binaries

Releases of this project are available at https://search.maven.org/artifact/net.sf.oval/oval

You can add OVal as a dependency to your pom.xml:

<dependency>
  <groupId>net.sf.oval</groupId>
  <artifactId>oval</artifactId>
  <version>[VERSION_GOES_HERE]</version>
</dependency>

User Guide

The user guide is available USERGUIDE.md

Articles about OVal

There exist some articles and blog entries talking about and/or referencing OVal:

Projects using OVal

Active:

Inactive:

License

All files are released under the Eclipse Public License 2.0.

Individual files contain the following tag instead of the full license text:

SPDX-License-Identifier: EPL-2.0

This enables machine processing of license information based on the SPDX License Identifiers that are available here: https://spdx.org/licenses/.