Update the `CustomEndpointConfiguration` class in
`ScheduledTasksEndpointAutoConfigurationTests` to be package private
so that it can be enhanced by cglib.
Prior to merge commit 361437f4 the class was a lite configuration so
it didn't matter that it was a private class.
Update the `BaseConfiguration` class in `ScheduledTasksEndpointTests`
to be package private so that it can be enhanced by cglib.
Prior to merge commit 361437f4 the class was a lite configuration so
it didn't matter that it was a private class.
Previously, the import selector wrongly assumed that we should not
use constructor injection with Kotlin. Rather than looking up for the
primary constructor, we retrieve available constructors on the Java
counter-part.
This commit applies the same logic as in the constructor parameter
binder and checks for the primary constructor for Kotlin types.
See gh-8762
Previously, the web starter declared direct dependencies on Hibernate Validator
and the Jakarta EE validation API. This meant that it required two exclusions to
exclude validation from a web application that did not need it.
This commit updates the web starter to get its validation dependencies via a
dependency on the validation starter. This allows validation to be excluded
using a single exclusion. The EL dependency from the validation starter has
been excluded to allow the EL implementation from the underlying container
starter (Tomcat, Jetty, or Undertow) to continue to be used instead.
Closes gh-16176
Previously, environment binding always happened in a post processor once
the bean has been created. Constructor binding requires to perform the
binding at creating time so this commit performs binding at creation
time if possible.
When this happens, a special `ConfigurationPropertiesBeanDefinition` is
created with a supplier that invokes the binder. To avoid a case where
a bean is processed twice, the post-processor now ignores any bean that
has already been bound to the environment.
Closes gh-8762
Co-authored-by: Madhura Bhave <mbhave@pivotal.io>