Spring Modules has been marked deprecated. In favor of Spring Extensions, says the page.
Now Spring Extensions doesn’t have Annotations validation, a great feature of the former project. In fact, I couldn’t find these annotations or the necessary Validator Configuration Loader anywhere in Spring 2.5.
So, for the time being, I’m using Validation 0.8a from Spring Modules, ignoring its deprecated status. If you’re using Spring 2.5 and Maven, do remember to exclude Spring from its dependencies. Your POM snippet should look somehow like this:
<dependency>
<groupId>org.springmodules</groupId>
<artifactId>spring-modules-validation</artifactId>
<version>0.8a</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
</exclusion>
</exclusions>
</dependency>
Otherwise you’ll end up having both Spring 2.0 and 2.5, which translates in errors such as MethodNotFoundExceptions and the like. I consider this feature a really cool one. I’m looking forward to seeing it in Spring Extensions, so there’s no need for this kind of dirty solutions anymore.