Commit Graph

24828 Commits

Author SHA1 Message Date
Stephane Nicoll d0afbe40e6 Tag EventListener as a reflective operation
This commit adds compatibility of declarative event listeners in a
native image.

See gh-28475
2022-05-20 15:14:59 +02:00
Stephane Nicoll 4cca190aad Add support of declarative use of reflection
This commit adds a `@Reflective` annotation that can be used to declare
that the annotated element requires reflection at runtime. By default,
the annotated element is exposed but this can be customized by
specifying a dedicated `ReflectiveProcessor`.

Closes gh-28469
2022-05-20 15:02:46 +02:00
Stephane Nicoll 2517c72f7d Add a common utility to register hints for an annotation
This commit adds a utility that takes care of registering the necessary
hints to make an annotation visible at runtime. The core framework may
create a JDK proxy if necessary, which requires specific handling.

Closes gh-28497
2022-05-20 14:54:27 +02:00
wonwoo 9181ac70f5 Correctly detect Optional return type for @HttpExchange methods
Prior to this commit, a ClassCastException was thrown for an Optional
return type for an @HttpExchange method. This is because the check for
an Optional return type was based on the type contained in the Optional
instead of the Optional itself.

Closes gh-28493
2022-05-20 11:25:31 +02:00
Stephane Nicoll 9487e8ce1e Polish 2022-05-18 13:57:48 +02:00
Sam Brannen 65066bd1e1 Fix Java 17 compiler warning about varargs 2022-05-17 15:44:55 +02:00
Sam Brannen 70415b1781 Merge branch '5.3.x' 2022-05-17 15:41:08 +02:00
Sam Brannen 59c7bb1f86 Use Arrays.toString instead of Arrays.asList when generating Strings 2022-05-17 15:36:31 +02:00
Sam Brannen a1c3efbb5f Polish ManagedList[Tests] and ManagedSet[Tests] 2022-05-17 15:36:31 +02:00
Sam Brannen 874077d16e Apply "advanced" instanceof pattern matching 2022-05-17 11:24:32 +02:00
Sam Brannen 578d3f4466 Polish error message 2022-05-17 11:22:56 +02:00
Sam Brannen 0d4d383068 Merge branch '5.3.x' 2022-05-16 11:22:17 +02:00
Sam Brannen 6efe3aee34 Polishing 2022-05-16 11:20:20 +02:00
Sam Brannen fe7c6f075b Polishing 2022-05-16 10:53:35 +02:00
Sam Brannen bf8a54decf Switch focus to JUnit Jupiter in testing examples 2022-05-16 10:05:37 +02:00
izeye 0fb0335aa0 Add level guards for trace logging in SpringFactoriesLoaderRuntimeHintsRegistrar
Closes gh-28465
2022-05-16 09:07:25 +02:00
Sam Brannen 5220410768 Update copyright date 2022-05-15 19:19:04 +02:00
Eddú Meléndez Gonzales 506b78f469
Use getHost instead of getContainerIpAddress in Redis examples
getContainerIpAddress is deprecated.

Closes gh-28461
2022-05-15 15:12:03 +02:00
Sam Brannen 3d39dfc4ce Polishing 2022-05-14 18:35:58 +02:00
Sam Brannen 754636ee56 Merge branch '5.3.x' 2022-05-14 18:32:14 +02:00
Sam Brannen f2fe7f335c Improve nullReturningBeanPostProcessor() test
See gh-28459
2022-05-14 18:30:39 +02:00
Sam Brannen 0cf2bd0bcf Suppress warning in test in Gradle build 2022-05-14 17:10:54 +02:00
Brian Clozel a6cd8a78e2 Upgrade to oci-build-task 0.10.0 in CI task 2022-05-13 08:55:28 +02:00
Arjen Poutsma 944c14bdf9 Fix email adress in '.mailmap' 2022-05-12 15:56:02 +02:00
Juergen Hoeller a8c3c746af Avoid package cycle with web.service.invoker through plain javadoc reference
See gh-28386
2022-05-12 13:17:12 +02:00
Juergen Hoeller fc8e6705d6 Move AutowiredArguments support classes to beans.factory.aot
This reduces the package cycle between aot and annotation to an Autowired annotation reference in ConstructorOrFactoryMethodResolver, to be resolved along with gh-27920.

See gh-28414
2022-05-12 13:15:08 +02:00
rstoyanchev f0e23b66f3 The "consumes" condition compares MediaType parameters
Closes gh-9257
2022-05-11 17:52:04 +01:00
Sam Brannen 4b0531b4aa Merge branch '5.3.x' 2022-05-11 17:33:52 +02:00
Sam Brannen 48c797e429 Fix Kotlin example for static factory method
Closes gh-28399
2022-05-11 17:33:31 +02:00
Sam Brannen 5ddbdb6ba7 Merge branch '5.3.x' 2022-05-11 17:17:20 +02:00
Sam Brannen be782a2197 Polish ref docs regarding the BeanFactory API
See gh-28403
2022-05-11 17:16:40 +02:00
Andy Wilkinson 1d825440c3 Update Javadoc since type-level @Controller is now required
See gh-22154 which removed support for a type-level @RequestMapping
annotation alone being sufficient for handler detection.

Closes gh-28448
2022-05-11 16:46:10 +02:00
izeye 6c8de96992 Add Javadoc since tag for RootBeanDefinition(ResolvableType) constructor
This commit also removes unnecessary super() invocations.

See gh-28418
Closes gh-28449
2022-05-11 16:42:28 +02:00
Sam Brannen 2487ccf79c Merge branch '5.3.x' 2022-05-11 16:32:52 +02:00
Sam Brannen 8098e45bad
Sync gradle.properties between 5.3.x and main 2022-05-11 16:30:44 +02:00
Sam Brannen 6325ca95a6 Merge branch '5.3.x'
# Conflicts:
#	gradle.properties
#	spring-webmvc/src/test/java/org/springframework/web/servlet/DispatcherServletTests.java
2022-05-11 16:20:09 +02:00
Sam Brannen 6a67b4a2aa Polish SpringFactoriesLoaderRuntimeHintsRegistrar
See gh-27955
2022-05-11 16:18:06 +02:00
Sam Brannen 06679a5583 Fix tests in DispatcherServletTests
See gh-28424
2022-05-11 16:00:26 +02:00
Sam Brannen 745eb1a881 Polish DispatcherServletTests 2022-05-11 15:59:47 +02:00
Brian Clozel e6c0152916 Force AOT resolution of Spring Factories constructors
This commit forces the resolution of all declared constructors when
registering `RuntimeHints` for Spring factories. Resolving constructors
can throw additional `NoClassDefFoundError` at runtime and during native
image compilation, if a type exposed by the constructor is missing from
the current classloader.

See gh-27955
2022-05-11 12:11:14 +02:00
Spring Builds 10c55ff912 Next development version (v5.3.21-SNAPSHOT) 2022-05-11 07:08:24 +00:00
Juergen Hoeller 8b6dcb9ccc Merge branch '5.3.x' 2022-05-11 08:52:05 +02:00
Juergen Hoeller 83186b689f Refine CachedIntrospectionResults property introspection
Closes gh-28445
2022-05-11 08:32:06 +02:00
rstoyanchev dc2947c52d Ignore invalid connect frame
Closes gh-28443
2022-05-11 07:22:22 +01:00
Phillip Webb 2961426d8a Fix checkstyle issues and test failures
See gh-27955
See gh-28442
2022-05-10 18:33:15 -07:00
Phillip Webb 83063a7269 Update '.mailmap` to consistently use @vmware.com emails 2022-05-10 17:08:49 -07:00
Brian Clozel 267b91486e Add native hints for SpringFactoriesLoader file content
Add `SpringFactoriesLoaderRuntimeHintsRegistrar` which provides
native hints for `spring.factories` content.

Closes gh-27955

Co-authored-by: Phillip Webb <pwebb@vmware.com>
2022-05-10 17:08:49 -07:00
Phillip Webb e7e60f7cb9 Add native hints for core annotations
Add `CoreAnnotationsRuntimeHintsRegistrar` to provide native hints
for `@Order` and `@AliasFor`.

Closes gh-28442
2022-05-10 16:11:36 -07:00
Phillip Webb 4cebd9d392 Fix SpringFactoriesLoader cache key when using default classloader
Update `SpringFactoriesLoader` so that `null` is never used for the
cache key. Prior to this commit, calling `forDefaultResourceLocation`
with `null` and `ClassUtils.getDefaultClassLoader()` would provide
different `SpringFactoriesLoader` instances rather than making use
of a single shared cached instance.

See gh-28416
2022-05-10 16:07:50 -07:00
Sam Brannen eb50a6f4a0 Further polishing regarding JDK baseline upgrade
See gh-28440
2022-05-10 17:01:40 +02:00