提交 e99cda37 编写于 作者: J Juergen Hoeller

updated to final versions of JSR-330 and JSR-303 APIs

上级 b42cf255
......@@ -3,11 +3,24 @@ SPRING FRAMEWORK CHANGELOG
http://www.springsource.org
Changes in version 3.0.0.RC2 (2009-##-##)
Changes in version 3.0.0.RC2 (2009-10-30)
-----------------------------------------
* DataBinder now accepts var-args to set allowed, disallowed, and required fields
* updated to final versions of JSR-330 "javax.inject" and JSR-303 "javax.validation" APIs
* full compliance with the JSR-330 TCK (i.e. full compliance with the final specification)
* support for Hibernate Validator 4.0 GA (as the JSR-303 reference implementation)
* revised MethodParameter's annotation accessor methods
* PathMatchingResourcePatternResolver leniently ignores non-existing root directories
* DefaultConversionService understands "on"/"off", "yes"/"no", "1"/"0" as boolean values
* CustomEditorConfigurer supports PropertyEditor instances again (with deprecation warning)
* ClassUtils is now parametrized with Class<?> and Class<T> where appropriate
* DataBinder now accepts var-args to set allowed, disallowed, and required fields
* DataBinder auto-grows nested paths on traversal (avoiding NullValueInNestedPathException)
* fixed enum binding regression with WebRequestDataBinder (as used by @MVC data binding now)
* fixed FieldError to expose rejected input value as String value instead of as array
* ContentNegotiatingViewResolver works with ignoreAcceptHeader and defaultContentType as well
* re-introduced Struts 1.x support ("org.springframework.web.struts") in deprecated form
* deprecated scheduling support for JDK 1.3 Timer ("org.springframework.scheduling.timer")
Changes in version 3.0.0.RC1 (2009-09-25)
......
......@@ -21,7 +21,7 @@
<dependencies>
<dependency org="javax.el" name="com.springsource.javax.el" rev="1.0.0" conf="provided->compile"/>
<dependency org="javax.inject" name="com.springsource.javax.inject" rev="0.9.0.PFD" conf="provided->compile"/>
<dependency org="javax.inject" name="com.springsource.javax.inject" rev="1.0.0" conf="provided->compile"/>
<dependency org="net.sourceforge.cglib" name="com.springsource.net.sf.cglib" rev="2.2.0" conf="optional, bytecode-proxy->compile"/>
<dependency org="org.apache.commons" name="com.springsource.org.apache.commons.logging" rev="1.1.1" conf="compile->compile"/>
<dependency org="org.springframework" name="org.springframework.core" rev="latest.integration" conf="compile->compile"/>
......
......@@ -23,6 +23,7 @@
<orderEntry type="library" name="Commons Pool" level="project" />
<orderEntry type="library" name="EasyMock" level="project" />
<orderEntry type="library" name="javax.inject" level="project" />
<orderEntry type="library" name="javax.validation" level="project" />
<orderEntry type="library" name="JUnit" level="project" />
<orderEntry type="library" name="Log4j" level="project" />
<orderEntry type="library" name="SLF4j" level="project" />
......@@ -140,22 +141,22 @@
<orderEntry type="module-library">
<library>
<CLASSES>
<root url="jar://$IVY_CACHE$/javax.validation/com.springsource.javax.validation/1.0.0.CR3/com.springsource.javax.validation-1.0.0.CR3.jar!/" />
<root url="jar://$IVY_CACHE$/org.hibernate/com.springsource.org.hibernate.validator/4.0.0.GA/com.springsource.org.hibernate.validator-4.0.0.GA.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$IVY_CACHE$/javax.validation/com.springsource.javax.validation/1.0.0.CR3/com.springsource.javax.validation-sources-1.0.0.CR3.jar!/" />
<root url="jar://$IVY_CACHE$/org.hibernate/com.springsource.org.hibernate.validator/4.0.0.GA/com.springsource.org.hibernate.validator-sources-4.0.0.GA.jar!/" />
</SOURCES>
</library>
</orderEntry>
<orderEntry type="module-library">
<library>
<CLASSES>
<root url="jar://$IVY_CACHE$/org.hibernate/com.springsource.org.hibernate.validator/4.0.0.Beta2/com.springsource.org.hibernate.validator-4.0.0.Beta2.jar!/" />
<root url="jar://$IVY_CACHE$/javax.inject/com.springsource.org.atinject.tck/1.0.0/com.springsource.org.atinject.tck-1.0.0.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$IVY_CACHE$/org.hibernate/com.springsource.org.hibernate.validator/4.0.0.Beta2/com.springsource.org.hibernate.validator-sources-4.0.0.Beta2.jar!/" />
<root url="jar://$IVY_CACHE$/javax.inject/com.springsource.org.atinject.tck/1.0.0/com.springsource.org.atinject.tck-sources-1.0.0.jar!/" />
</SOURCES>
</library>
</orderEntry>
......
......@@ -35,10 +35,10 @@
<dependency org="edu.emory.mathcs.backport" name="com.springsource.edu.emory.mathcs.backport" rev="3.0.0" conf="optional, backport-util-concurrent->compile"/>
<dependency org="javax.annotation" name="com.springsource.javax.annotation" rev="1.0.0" conf="provided, ejb->compile"/>
<dependency org="javax.ejb" name="com.springsource.javax.ejb" rev="3.0.0" conf="provided, ejb->compile"/>
<dependency org="javax.inject" name="com.springsource.javax.inject" rev="0.9.0.PFD" conf="provided->compile"/>
<dependency org="javax.inject" name="com.springsource.javax.inject" rev="1.0.0" conf="provided->compile"/>
<dependency org="javax.jms" name="com.springsource.javax.jms" rev="1.1.0" conf="provided, jms->compile"/>
<dependency org="javax.persistence" name="com.springsource.javax.persistence" rev="1.0.0" conf="provided, jpa->compile"/>
<dependency org="javax.validation" name="com.springsource.javax.validation" rev="1.0.0.CR3" conf="provided->compile"/>
<dependency org="javax.validation" name="com.springsource.javax.validation" rev="1.0.0.GA" conf="provided->compile"/>
<dependency org="javax.xml.ws" name="com.springsource.javax.xml.ws" rev="2.1.1" conf="provided, ws->compile"/>
<dependency org="net.sourceforge.cglib" name="com.springsource.net.sf.cglib" rev="2.2.0" conf="optional, bytecode-proxy->compile"/>
<dependency org="org.aopalliance" name="com.springsource.org.aopalliance" rev="1.0.0" conf="compile->compile"/>
......@@ -55,13 +55,14 @@
<dependency org="org.springframework" name="org.springframework.expression" rev="latest.integration" conf="compile->compile"/>
<dependency org="org.springframework" name="org.springframework.instrument" rev="latest.integration" conf="optional, instrumentation->compile"/>
<!-- test dependencies -->
<dependency org="javax.inject" name="com.springsource.org.atinject.tck" rev="1.0.0" conf="provided->compile"/>
<dependency org="javax.transaction" name="com.springsource.javax.transaction" rev="1.1.0" conf="test->compile"/>
<dependency org="javax.xml.rpc" name="com.springsource.javax.xml.rpc" rev="1.1.0" conf="test->compile"/>
<dependency org="org.apache.commons" name="com.springsource.org.apache.commons.pool" rev="1.4.0" conf="test->compile"/>
<dependency org="org.apache.commons" name="com.springsource.org.apache.commons.dbcp" rev="1.2.2.osgi" conf="test->runtime"/>
<dependency org="org.apache.log4j" name="com.springsource.org.apache.log4j" rev="1.2.15" conf="test->runtime"/>
<dependency org="org.easymock" name="com.springsource.org.easymock" rev="2.5.1" conf="test->compile"/>
<dependency org="org.hibernate" name="com.springsource.org.hibernate.validator" rev="4.0.0.Beta2" conf="test->runtime"/>
<dependency org="org.hibernate" name="com.springsource.org.hibernate.validator" rev="4.0.0.GA" conf="test->runtime"/>
<dependency org="org.junit" name="com.springsource.org.junit" rev="4.7.0" conf="test->runtime"/>
<dependency org="org.slf4j" name="com.springsource.slf4j.jcl" rev="1.5.3" conf="test->runtime"/>
</dependencies>
......
......@@ -45,7 +45,8 @@
</dependency>
<dependency>
<groupId>javax.inject</groupId>
<artifactId>com.springsource.javax.inject</artifactId>
<artifactId>javax.inject</artifactId>
<version>1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
......@@ -63,7 +64,7 @@
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.0.CR3</version>
<version>1.0.GA</version>
<scope>provided</scope>
</dependency>
<dependency>
......@@ -193,7 +194,7 @@
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.0.0.Beta2</version>
<version>4.0.0.GA</version>
<scope>test</scope>
</dependency>
<dependency>
......
......@@ -57,7 +57,7 @@ import org.springframework.util.CollectionUtils;
* @see javax.validation.ValidatorFactory#getValidator()
*/
public class LocalValidatorFactoryBean extends SpringValidatorAdapter
implements ValidatorFactory, Validator, ApplicationContextAware, InitializingBean {
implements ValidatorFactory, ApplicationContextAware, InitializingBean {
private Class providerClass;
......@@ -208,4 +208,12 @@ public class LocalValidatorFactoryBean extends SpringValidatorAdapter
return this.validatorFactory.getMessageInterpolator();
}
public TraversableResolver getTraversableResolver() {
return this.validatorFactory.getTraversableResolver();
}
public ConstraintValidatorFactory getConstraintValidatorFactory() {
return this.validatorFactory.getConstraintValidatorFactory();
}
}
......@@ -24,14 +24,13 @@ import java.util.Arrays;
import java.util.Iterator;
import java.util.Set;
import javax.validation.Constraint;
import javax.validation.ConstraintPayload;
import javax.validation.ConstraintValidator;
import javax.validation.ConstraintValidatorContext;
import javax.validation.ConstraintViolation;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import org.hibernate.validation.HibernateValidationProvider;
import org.hibernate.validator.HibernateValidator;
import static org.junit.Assert.*;
import org.junit.Test;
......@@ -66,7 +65,7 @@ public class ValidatorFactoryTests {
@Test
public void testSimpleValidationWithCustomProvider() throws Exception {
LocalValidatorFactoryBean validator = new LocalValidatorFactoryBean();
validator.setProviderClass(HibernateValidationProvider.class);
validator.setProviderClass(HibernateValidator.class);
validator.afterPropertiesSet();
ValidPerson person = new ValidPerson();
Set<ConstraintViolation<ValidPerson>> result = validator.validate(person);
......@@ -182,7 +181,7 @@ public class ValidatorFactoryTests {
Class<?>[] groups() default {};
Class<? extends ConstraintPayload>[] payload() default {};
Class<?>[] payload() default {};
}
......
......@@ -97,8 +97,8 @@
<dependency org="org.hibernate" name="com.springsource.org.hibernate" rev="3.3.1.GA"
conf="test->compile"/>
<dependency org="javax.transaction" name="com.springsource.javax.transaction" rev="1.1.0" conf="provided->runtime"/>
<dependency org="javax.validation" name="com.springsource.javax.validation" rev="1.0.0.CR3" conf="test->compile"/>
<dependency org="org.hibernate" name="com.springsource.org.hibernate.validator" rev="4.0.0.Beta2" conf="test->runtime"/>
<dependency org="javax.validation" name="com.springsource.javax.validation" rev="1.0.0.GA" conf="test->compile"/>
<dependency org="org.hibernate" name="com.springsource.org.hibernate.validator" rev="4.0.0.GA" conf="test->runtime"/>
<dependency org="org.slf4j" name="com.springsource.slf4j.jcl" rev="1.5.3" conf="test->runtime"/>
</dependencies>
......
......@@ -280,13 +280,14 @@
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>com.springsource.javax.validation</artifactId>
<version>1.0.0.CR3</version>
<artifactId>validation-api</artifactId>
<version>1.0.GA</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.0.0.Beta2</version>
<version>4.0.0.GA</version>
<scope>test</scope>
</dependency>
<dependency>
......
......@@ -981,6 +981,15 @@
<root url="jar://$PROJECT_DIR$/ivy-cache/repository/javax.inject/com.springsource.javax.inject/0.9.0.PFD/com.springsource.javax.inject-sources-0.9.0.PFD.jar!/" />
</SOURCES>
</library>
<library name="javax.validation">
<CLASSES>
<root url="jar://$PROJECT_DIR$/ivy-cache/repository/javax.validation/com.springsource.javax.validation/1.0.0.GA/com.springsource.javax.validation-1.0.0.GA.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ivy-cache/repository/javax.validation/com.springsource.javax.validation/1.0.0.GA/com.springsource.javax.validation-sources-1.0.0.GA.jar!/" />
</SOURCES>
</library>
</component>
<UsedPathMacros>
<macro name="IVY_CACHE" />
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册