Go to file
Sam Brannen 9244090ba0 Support DI of individual constructor args in @Nested tests
Prior to this commit it was impossible to have an individual
constructor argument in a @Nested (i.e., inner) test class injected via
@Autowired, @Qualifier, or @Value.

This is due to a bug in javac on JDK versions prior to 9, whereby
annotation lookups performed directly via the
java.lang.reflect.Parameter API fail for inner class constructors.

Specifically, the parameter annotations array in the compiled byte code
for the user's test class excludes an entry for the implicit enclosing
instance parameter for an inner class constructor.

This commit introduces a workaround in ParameterAutowireUtils for this
off-by-one error by transparently looking up annotations on the
preceding Parameter object (i.e., index - 1). In addition, this commit
relies on the change recently introduced in MethodParameter in order to
compensate for the same JDK bug (see SPR-16652).

Issue: SPR-16653
2018-03-29 17:47:45 +02:00
.settings/gradle
buildSrc
gradle
spring-aop avoid unnecessary autoboxing 2018-03-28 23:48:12 +02:00
spring-aspects
spring-beans Use Map.forEach instead of manual Map.Entry iteration wherever possible 2018-03-27 00:38:32 +02:00
spring-context avoid unnecessary autoboxing 2018-03-28 23:48:12 +02:00
spring-context-indexer Upgrade to Reactor Bismuth SR7, Hibernate ORM 5.2.14, Common Annotations 1.3.2 2018-02-28 14:01:04 +01:00
spring-context-support Upgrade to Jackson 2.9.5 and Hibernate Validator 6.0.9 2018-03-27 17:33:34 +02:00
spring-core Polishing 2018-03-29 17:45:55 +02:00
spring-expression Consistent references to primitive types (in alphabetical order) 2018-03-29 16:05:00 +02:00
spring-framework-bom
spring-instrument
spring-jcl Revised deprecation markers 2018-03-01 23:43:06 +01:00
spring-jdbc NamedParameterUtils.parseSqlStatement should parse :{x} style parameter correctly 2018-03-29 15:00:25 +02:00
spring-jms Use Map.forEach instead of manual Map.Entry iteration wherever possible 2018-03-27 00:38:32 +02:00
spring-messaging Use Map.forEach instead of manual Map.Entry iteration wherever possible SPR-16646 2018-03-28 01:09:03 +02:00
spring-orm Upgrade to Hibernate ORM 5.2.16 and 5.1.13 2018-03-23 17:36:55 +01:00
spring-oxm
spring-test Support DI of individual constructor args in @Nested tests 2018-03-29 17:47:45 +02:00
spring-tx Consistent volatile access to running flag in Lifecycle implementations 2018-03-15 15:17:55 +01:00
spring-web Polishing 2018-03-29 16:05:52 +02:00
spring-webflux Consistent trace logging in PathResourceResolver 2018-03-29 16:04:33 +02:00
spring-webmvc Polishing 2018-03-29 16:05:52 +02:00
spring-websocket Use Map.forEach instead of manual Map.Entry iteration wherever possible SPR-16646 2018-03-28 01:09:03 +02:00
src Update link to WebSocket spec issue 2018-03-28 15:54:57 -04:00
.editorconfig
.gitignore
.mailmap
CODE_OF_CONDUCT.adoc
CONTRIBUTING.md Update CONTRIBUTING.md 2018-03-22 10:57:19 -04:00
README.md
build.gradle Upgrade to Jackson 2.9.5 and Hibernate Validator 6.0.9 2018-03-27 17:33:34 +02:00
gradle.properties
gradlew
gradlew.bat
import-into-eclipse.bat
import-into-eclipse.sh
import-into-idea.md
settings.gradle

README.md

Spring Framework

This is the home of the Spring Framework, the foundation for all Spring projects. Together the Spring Framework and the family of Spring projects make up what we call "Spring".

Spring provides everything you need beyond the Java language to create enterprise applications in a wide range of scenarios and architectures. Please read the Overview section in the reference for a more complete introduction.

Code of Conduct

This project is governed by the Spring Code of Conduct. By participating you are expected to uphold this code. Please report unacceptable behavior to spring-code-of-conduct@pivotal.io.

Access to Binaries

For access to artifacts or a distribution zip, see the Spring Framework Artifacts wiki page.

Documentation

The Spring Frameworks maintains reference documentation (published and source), Github wiki pages, and an API reference. There are also guides and tutorials across Spring projects.

Build from Source

See the Build from Source wiki page and also CONTRIBUTING.md.

Stay in Touch

Follow @SpringCentral, @SpringFramework, and its team members on Twitter. In-depth articles can be found at The Spring Blog, and releases are announced via our news feed.

License

The Spring Framework is released under version 2.0 of the Apache License.