Commit Graph

1961 Commits (0cd8197ebfcd3749897539218a9e0fe774814cf3)

Author SHA1 Message Date
Brian Clozel 7113d41a80 Merge branch '2.1.x'
Closes gh-18618
5 years ago
Brian Clozel e4fa9ce8c6 Deprecate server.connection-timeout property
Prior to this commit, all supported servers would share the same
configuration property `server.connection-timeout`. Unfortunately, in
many cases the behavior of this timeout changes depending on the server.
From actual connection setup timeout, to detecting and closing idle
connections, this property cannot be properly translated from one server
implementation to another.

This commit deprecates this configuration property and introduces server
specific properties:

* `server.jetty.connection-idle-timeout`
(Time that the connection can be idle before it is closed.)
* `server.netty.connection-timeout`
(Connection timeout of the Netty channel.)
* `server.tomcat.connection-timeout`
(Amount of time the connector will wait, after accepting a connection,
for the request URI line to be presented.)
* `server.undertow.no-request-timeout`
(Amount of time a connection can sit idle without processing a request,
before it is closed by the server.)

`server.connection-timeout` is now deprecated and will be removed in a
future release.

Fixes gh-18473
5 years ago
Andy Wilkinson 4b4b39853b Merge branch '2.1.x'
Closes gh-18608
5 years ago
Andy Wilkinson 00d4b44cbb Remove trailing commas from test SQL scripts
Closes gh-18607
5 years ago
Andy Wilkinson 6e84ae6474 Make SAML 2 login configuration back off with user provider config adapter
Previously, a WebSecurityConfigurerAdapter would be configured
irrespective of whether or not the user had provided their own
WebSecurityConfigurerAdapter. This then required them to use ordering
to diambiguate the configuration and made it harder to take complete
control of security configuration.

This commit updates the configuration of the SAML 2 login configurer
adapter to be conditional on missing bean, aligning it with other
security configuration such as the equivalent OAuth 2 configurer
adapter.

Closes gh-18530
5 years ago
Andy Wilkinson 07d0794827 Consider possibility of missing @ConstructorBinding in failure analysis
Previously, when a NoSuchBeanDefinitionException was being analyzed,
the possibility of a missing @ConstructorBinding annotation on a
@ConfigurationProperties class was not considered.

This commit updates the failure analysis for failed constructor
injection of an instance of a @ConfigurationProperties-annotated
class. When such a failure occurs, adding @ConstructorBinding is
now suggested as an action.

Closes gh-18545
5 years ago
Johnny Lim 701bd0dd46 Polish
See gh-18490
5 years ago
Phillip Webb 795303d667 Replace depends-on post processor configurations
Replace `AbstractDependsOnBeanFactoryPostProcessor` `@Configuration`
classes with simple `@Import` component classes.

Closes gh-18382
5 years ago
Madhura Bhave 40ac5b4ae2 Autoconfigure RSocket Security
Closes gh-18356
5 years ago
Madhura Bhave bc96e09965 Add additional test for reactive security auto-config 5 years ago
Madhura Bhave 22ed56ac52 Add auto-config for Spring Security's SAML support
Closes gh-18260

Co-authored-by: Phillip Webb <pwebb@pivotal.io>
5 years ago
Phillip Webb 71f8347c81 Rename ServerRSocketFactoryCustomizer
Rename `ServerRSocketFactoryCustomizer` to
`ServerRSocketFactoryProcessor` to better reflect that it is not a
traditional customizer.

Closes gh-18390
5 years ago
Andy Wilkinson 46c30d6bb0 Merge branch '2.1.x'
Closes gh-18476
5 years ago
Andy Wilkinson 3d4157ad6d Correct SCM URLs in published poms
Previously, Maven's default behaviour was relied up which resulted
in the artifact ID being appended to each URL as it was inherited.
This behaviour can only be disabled in Maven 3.6 and later, a version
that we cannot use due to an incompatibility with the Flatten Plugin.

This commit works around Maven's default behaviour by defining
properties for the SCM URL, connection, and developer connection and
then explicitly defining the settings in each pom using these
properties. The explicit definition of the properties in each pom
prevents them being inherited from the parent, thereby disabling the
unwanted appending of the artifact ID to the URL.

Fixes gh-18328
5 years ago
Vedran Pavic 4808016560 Align with Spring Session MongoDB deprecations
See gh-18470
5 years ago
dreis2211 bafc10f2c4 Fix default values in metadata for HiddenHttpMethodFilter
See gh-18435
5 years ago
Phillip Webb 1f9c9fedb4 Merge branch '2.1.x'
Closes gh-18409
5 years ago
Phillip Webb 615c6d4e86 Restructure RSocket packages and polish
Polish code and relocate `RSocketServerBootstrap` from `server` to
`context` since it's really an `ApplicationContext` concern.

Closes gh-18391
5 years ago
Phillip Webb 4b0fb8ff24 Polish 'Add @LocalRSocketServerPort support'
See gh-18287
5 years ago
Verónica Vásquez 3c8fa3bbd0 Add @LocalRSocketServerPort support
Add an appication context initializer to detect and store the
active RSocket port in the Environment under
`local.rsocket.server.port`.

Additionally add a `@LocalServerPort` that provides a convenient
alternative to `@Value`.

See gh-18287

Co-authored-by: Eddú Meléndez <eddu.melendez@gmail.com>
5 years ago
Tadaya Tsuyukubo bccdf04358 Use ordered TaskExecutorCustomizers
Use an ordered stream in `TaskExecutionAutoConfiguration` when
obtaining the TaskExecutor customizers.

See gh-18333
5 years ago
Madhura Bhave 39ed15728f Configure oauth2client in Reactive OAuth2 client auto-config
Closes gh-18385
5 years ago
Stephane Nicoll f78c9574d8 Start building against Spring Session Corn snapshots
See gh-18257
5 years ago
Phillip Webb d83238aaab Merge branch '2.1.x'
Closes gh-18369
5 years ago
Phillip Webb 050460f635 Check factory bean for EntityManager datasource
Update `DataSourceInitializedPublisher` to fallback to the
`LocalContainerEntityManagerFactoryBean` if the
`javax.persistence.nonJtaDataSource` property is not defined.

As of Hibernate 4.3 the property is no longer set if the `EntityManager`
is created from a `PersistenceUnitInfo` instance rather than actual
properties.

Although this is being addressed in Hibernate issue HHH-13432, it's
not strictly a requirement of the JPA spec that the property is set.

Fixes gh-17061
5 years ago
dreis2211 4262aab446 Fix deprecation warnings caused by BodyInserters.fromObject
See gh-18349
5 years ago
Madhura Bhave 0a70e33009 Merge branch '2.1.x'
Closes gh-18345
5 years ago
Madhura Bhave 342a0535d7 Explicitly configure SecurityWebFilterChain bean for reactive oauth2 client
This will ensure that ReactiveManagementWebSecurityAutoConfiguration backs
off and that the actuator endpoints are also secured via OAuth2.

Fixes gh-17949
5 years ago
Andy Wilkinson a354657ace Merge branch '2.1.x'
Closes gh-18343
5 years ago
Andy Wilkinson c613418451 Suppress body when handling a no content (204) "error"
Fixes gh-18136
5 years ago
Andy Wilkinson 419f92d381 Tune @ConditionalOnMissingBean for interface-based back off
Previously, a number of usages of @ConditionalOnMissingBean prevented
a bean that implements an auto-configured bean's "main" interface from
causing the auto-configuration of the bean to back off. This would
happen when @ConditionalOnMissingBean did not specify a type, the
@Bean method returned the bean's concrete type, and that concreate
type implements a "main" interface.

This commit updates such usages of @ConditionalOnMissingBean to
specify the "main" interface as the type of the bean that must be
missing. This will allow, for example, the auto-configured
MongoTemplate bean to back off when a MongoOperations bean is defined.

Fixes gh-18101
5 years ago
Phillip Webb 5076d8562a Fix Artemis EmbeddedJMS initialization
Update `ArtemisConnectionFactoryFactory` to reference the new
embedded Artemis classes.

See gh-16646
5 years ago
Andy Wilkinson 42e0dc14b5 Migrate from deprecated Artemis EmbeddedJMS
Closes gh-16646
5 years ago
Andy Wilkinson b9cfbf7c8b Merge branch '2.1.x'
Closes gh-18323
5 years ago
Andy Wilkinson 9df356ec4c Fix destination checking in Artemis auto-configuration tests
Closes gh-18319
5 years ago
Andy Wilkinson 2de7b3af4a Merge branch '2.1.x' 5 years ago
Andy Wilkinson e5f26a4f1a Rename test resource to be Windows-friendly 5 years ago
Andy Wilkinson 30c05b2b49 Support X-Forwarded-Host header when auto-configuring RemoteIpValve
Closes gh-18233
5 years ago
Andy Wilkinson 4cc7fef728 Deprecate support for Spring Cloud Connectors in favor of Java CFEnv
Closes gh-17877
5 years ago
Andy Wilkinson ea6d9f3328 Merge branch '2.1.x'
Closes gh-18298
5 years ago
aohana 51a8c73b7b Test custom comment prefix with one that does not work by default
See gh-18285
5 years ago
Andy Wilkinson 8791b696f8 Add auto-configuration support for TransactionalOperator
Closes gh-18265
5 years ago
Andy Wilkinson 3b01bc0366 Switch TransactionAutoConfigurationTests to ApplicationContextRunner 5 years ago
Brian Clozel 070eedaa19 Configure RouteMatcher at the RSocketStrategies level
After a change in Spring Framework (see
spring-projects/spring-framework#23314), the `RouteMatcher` to be used
with the RSocket infrastructure is configured on the `RSocketStrategies`
directly.

This commit moves the auto-configuration of the
`PathPatternRouteMatcher` from the message handling parts to the RSocket
strategy one.

Closes gh-17571
5 years ago
Johnny Lim b70be97cbf Polish
See gh-18281
5 years ago
Andy Wilkinson 9377b9a9e4 Support -- and # by default as Quartz datasource init comment prefixes
Closes gh-17435
5 years ago
Andy Wilkinson 1b237de5f5 Use Awaitility in our own tests
Closes gh-18227
5 years ago
Andy Wilkinson b9bb84236b Restore compatibility with Flyway 5.2
Previously, the upgrade to Flyway 6 broke compatibility with Flyway
5.2 due to the use of method references that refer to two methods
that do not exist in Flyway 5.2.

This commit replaces the method references with lambdas that are only
called if the user sets the related property. Unless a new-in-Flyway-6
property is set, the auto-configuration will work as before. When such
a property is set the auto-configuration will fail with a
NoSuchMethodError. This approach was chosen to make the
incompatibility clear.

We have also introduced support for passing any JavaMigration beans
in the context into Flyway. This too relies on API that is new in
Flyway 6. It is possible (although unlikely) that users had
JavaMigration beans in Spring Boot 2.1 that were being ignored. This
commit restores this behaviour when using Flyway 5.2.

Closes gh-18193
5 years ago
Stephane Nicoll 70f7e47002 Polish "Use Duration for ServerProperties.Jetty.idleTimeout"
See gh-18206
5 years ago
Johnny Lim 96019362f7 Use Duration for ServerProperties.Jetty.idleTimeout
See gh-18206
5 years ago
Johnny Lim 5b41c3b608 Polish
See gh-18192
5 years ago
Brian Clozel 219bafaba1 Apply RSocket server customizers to netty web server
This commit applies `ServerRSocketFactoryCustomizer` beans to RSocket
setups when the RSocket server is being plugged into an existing Reactor
Netty web server.

Fixes gh-18208
5 years ago
Andy Wilkinson 80b8f19961 Tune @ConditionalOnMissingBean for interface-based back off
Previously, a number of usages of @ConditionalOnMissingBean prevented
a bean that implements an auto-configured bean's "main" interface from
causing the auto-configuration of the bean to back off. This would
happen when @ConditionalOnMissingBean did not specify a type, the
@Bean method returned the bean's concrete type, and that concreate
type implements a "main" interface.

This commit updates such usages of @ConditionalOnMissingBean to
specify the "main" interface as the type of the bean that must be
missing. This will allow, for example, the auto-configured
MongoTemplate bean to back off when a MongoOperations bean is defined.
5 years ago
Andy Wilkinson 71d5d481ad Merge branch '2.1.x'
Closes gh-18165
5 years ago
Andy Wilkinson 19ccfaea86 Fix QuartzAutoConfiguration when Liquibase is not on the class path
Fixes gh-18153
5 years ago
Andy Wilkinson 1f875d552a Polish "Add a config property for JMS listener container's receive timeout"
See gh-17332
5 years ago
ibmmqmet 1cde657861 Add a config property for JMS listener container's receive timeout
See gh-17332
5 years ago
Andy Wilkinson 6328f2e8a8 Polish "Make logError() in AbstractErrorWebExceptionHandler overrideable"
See gh-17863
5 years ago
Peter Jurkovic 7ea612beaf Make logError() in AbstractErrorWebExceptionHandler overrideable
See gh-17863
5 years ago
Andy Wilkinson 13b45b42c7 Align with breaking API changes in latest Security snapshots
See gh-17897
5 years ago
Andy Wilkinson 29080b87ec Protect autoconfigure module against slow starting test containers 5 years ago
Phillip Webb c1a16f5f21 Merge branch '2.1.x'
Closes gh-18117
5 years ago
Phillip Webb 43108d5495 Add @SpringBootApplication.scanBasePackages note
Update the javadoc to note that `scanBasePackages` only affects the
`@ComponentScan` annotation and isn't a replacement for `@EntityScan`
or `@Enable...Repositories`.

Closes gh-18109
5 years ago
Andy Wilkinson 6daab5c8ef Merge branch '2.1.x'
Closes gh-18108
5 years ago
Johnny Lim 2eac53cc5d Fix typo in deprecation reason for liquibase.check-change-log-location
See gh-18100
5 years ago
Andy Wilkinson ee0f57bfc7 Merge branch '2.1.x'
Closes gh-18106
5 years ago
Andy Wilkinson 52311ffe3c Depend on FlywayMigrationInitializer beans by type not name
Previously, a custom FlywayMigrationInitializer bean named anything
other than flywayInitializer could result in a
NoSucBeanDefinitionException as the dependencies set up for JPA and
JDBC components used the bean name flywayInitializer.

This commit updates the configuration of the dependencies to depend
on FlywayMigrationInitializer beans by type rather than name.

Fixes gh-18105
5 years ago
Andy Wilkinson 2dea534a0e Merge branch '2.1.x'
Closes gh-18103
5 years ago
Andy Wilkinson f313bf27a1 Depend on Flyway beans by type not name
Previously, a custom Flyway bean named anything other than flyway
could result in a NoSucBeanDefinitionException as the dependencies
set up for JPA and JDBC components used the bean name flyway.

This commit updates the configuration of the dependencies to depend
on Flyway beans by name rather than type.

Fixes gh-18102
5 years ago
dreis2211 07b857e57a Use disabledWithoutDocker option for @Testcontainers
See gh-18095
5 years ago
dreis2211 b4350a9d96 Remove unnecessary blank lines
See gh-18089
5 years ago
Andy Wilkinson 20b6656ba7 Protect autoconfigure module against slow starting test containers 5 years ago
Andy Wilkinson 3a417eec52 Merge branch '2.1.x' 5 years ago
Andy Wilkinson 4fd7b68f71 Polish 5 years ago
Phillip Webb a86258e62c Revert "Reduce bean method visibility"
Reverts commit 2be3027dcf
on 2.1.x
5 years ago
Phillip Webb b3835a8149 Merge branch '2.1.x' 5 years ago
Phillip Webb 2be3027dcf Reduce bean method visibility
See gh-17539
5 years ago
Phillip Webb 3746631081 Merge branch '2.1.x'
Closes gh-18085
5 years ago
Phillip Webb 75a1a24914 Polish "Ensure Flyway/Liquibase runs before Quartz"
See gh-17539
5 years ago
Dmytro Nosan 7e5bd1f281 Ensure Flyway/Liquibase runs before Quartz
Add post processors to ensure that SchedulerFactoryBean and Scheduler
beans depend on the Flyway and Liquibase beans.

See gh-17539
5 years ago
dreis2211 3e35a6616c Fix duplicated words
See gh-18004
5 years ago
Phillip Webb 1283bc05d7 Merge branch '2.1.x'
Closes gh-18021
5 years ago
Phillip Webb 5938ca78b6 Fix request matcher management context support
Fix caching issues in `ApplicationContextRequestMatcher` and allow
subclasses to ignore an application context entirely. Update existing
matcher implementations so that they deal with the management context
correctly.

Prior to this commit, the `ApplicationContextRequestMatcher` would
return a context cached from the first request. It also didn't
provide any way to ignore a context. This meant that if the user was
running the management server on a different port the matching results
could be inconsistent depending on if the first request arrived on
the regular context or the management context. It also meant that we
could not distinguish between the regular context and the management
context when matching.

Closes gh-18012
5 years ago
davinkevin 84c81462b4 Upgrade to jOOQ 3.12.0
See gh-18014
5 years ago
Andy Wilkinson e2edb6a539 Polish "Auto-configure Flyway with JavaMigration beans"
See gh-17993
5 years ago
Semyon Danilov ff68295928 Auto-configure Flyway with JavaMigration beans
See gh-17993
5 years ago
Andy Wilkinson 0e2a131e5d Polish "Upgrade to Flyway 6.0.1"
See gh-17997
5 years ago
Semyon Danilov 278b20d9c9 Upgrade to Flyway 6.0.1
See gh-17997
5 years ago
Stephane Nicoll 96596f8ecc Polish contribution
See gh-17962
5 years ago
Kant 7ee3656188 Polish
See gh-17962
5 years ago
Madhura Bhave 2726540e76 Merge branch '2.1.x'
Closes gh-17980
5 years ago
Madhura Bhave 674f2f5a6c EndpointRequest should match @ServletEndpoint
This commit also changes the request matcher for MVC
endpoints to use an AntPathRequestMatcher instead of an
MvcRequestMatcher. The endpoint is always available
under the mapped endpoint path and this way the same matcher
can be used for both MVC and Jersey.

Fixes gh-17912

Co-authored-by: Phillip Webb <pwebb@pivotal.io>
5 years ago
dreis2211 ec57f0c31f Fix upstream RSocket method renames
See gh-17973
5 years ago
Madhura Bhave 46ea4a2501 isPublisherConfirms in RabbitProperties should not throw NPE
Fixes gh-17967
5 years ago
Stephane Nicoll 7d994e607d Restructure tests to exercise deprecated property in a dedicated test
See gh-17848
5 years ago
Madhura Bhave 21783faede Merge branch '2.1.x'
Closes gh-17953
5 years ago
Madhura Bhave 28d374d84d Polish "Configure Issuer Validator for Resource Server"
See gh-17952
5 years ago
HaiTao Zhang b3d189cf87 Configure Issuer Validator for Resource Server
See gh-17952
5 years ago
Madhura Bhave 8954fe13e5 Polish "Support additional publisher confirm types"
See gh-17848
5 years ago
HaiTao Zhang 8c1c8a27d9 Support additional publisher confirm types
See gh-17848
5 years ago
LiangYong 12bfca56d6 Remove unnecessary null check
See gh-17916
5 years ago
Andy Wilkinson c48228f645 Merge branch '2.1.x'
Closes gh-17942
5 years ago
Andy Wilkinson ac0a22d603 Tolerate LCEMFB with null JpaVendorAdapter in JPA auto-config
Closes gh-17935
5 years ago
Andy Wilkinson 05e089601e Remove default favicon and support for serving from classpath root
Closes gh-17925
5 years ago
dreis2211 6ef6875a60 Correct WebFlux response body method
See gh-17919
5 years ago
Andy Wilkinson 9ac6485768 Prioritise static resource locations over classpath for favicon.ico
Closes gh-17922
5 years ago
Brian Clozel e7c3ab3e27 Rename WebFlux response body methods
This commit adapts to recent changes in Spring Framework.
See spring-projects/spring-framework#23212
5 years ago
Andy Wilkinson 7f8944d00f Polish 5 years ago
Andy Wilkinson cc3df98135 Merge branch '2.1.x' 5 years ago
Andy Wilkinson ab87b2a39b Polish 5 years ago
LiangYong a5746d0a03 Simplify some code
See gh-17893
5 years ago
dreis2211 d4affd7f85 Use hasSize() assertion in favor of length checks
See gh-17874
5 years ago
Stephane Nicoll 04b63cda8f Merge branch '2.1.x'
Closes gh-17889
5 years ago
Filip Hrisafov 1ebbe9fc55 Map non-null LDAP properties
The userDn and password in LdapContextSource are not nullable. The
default values for userDn and password in LdapProperties are null. When
the values are set to null there will eventually be a
NullPointerException during
AbstractContextSource#setupAuthenticatedEnvironment since HashTable
doesn't allow null for values.

See gh-17861
5 years ago
Madhura Bhave 76dfe1aae4 Merge branch '2.1.x'
Closes gh-17887
5 years ago
Madhura Bhave 0187e5106d Polish "Set up SpringLiquibase beans' dependencies by type rather than name"
See gh-17805
5 years ago
Andrii Hrytsiuk b69f9e9fdf Add missing javadoc
See gh-17805
5 years ago
Andrii Hrytsiuk eaad22dd89 Set up SpringLiquibase beans' dependencies by type rather than name
See gh-17805
5 years ago
Madhura Bhave 64e8b1d47c Polish "Add properties for Jetty threadpool"
See gh-17871
5 years ago
HaiTao Zhang 1024d74742 Add properties for Jetty threadpool
See gh-17871
5 years ago
Madhura Bhave eea83e935e Resolve httpstatus error series using raw int code
See gh-16691
5 years ago
Madhura Bhave 4b4dc28a86 Support non-standard error codes with AbstractErrorWebExceptionHandler
Fixes gh-16691
5 years ago
Madhura Bhave 178746d678 Update Opaque Token Client Name following upstream changes
Closes gh-17846
5 years ago
Brian Clozel 16f798dc11 Apply RSocket transport configuration on server
Fixes gh-17845
5 years ago
dreis2211 b605cddb10 Polish some Collections API calls
See gh-17825
5 years ago
Stephane Nicoll b8a1043e98 Merge branch '2.1.x'
Closes gh-17813
5 years ago
Stephane Nicoll 1b3a6d1616 Polish "Configure a temporary directory with Undertow"
See gh-17778
5 years ago
Vedran Pavic 85a289f71a Harmonize Spring Session flush mode properties javadoc
See gh-17797
5 years ago
Vedran Pavic 84dd1f2d29 Add support for configuring Spring Session JDBC flush mode
See gh-17797
5 years ago
Madhura Bhave c5d1781ae1 Merge branch '2.1.x'
Closes gh-17793
5 years ago
陈其苗 77931a0981 Fix typo in assertion
See gh-17774
5 years ago
Stephane Nicoll 7874de4062 Restore tests that were failing with Java 13
Closes gh-17607
5 years ago
Madhura Bhave ea244aa32b Merge branch '2.1.x'
Closes gh-17769
5 years ago
Madhura Bhave faaada1416 Remove liquibase check change log location
Missing change logs would lead to an exception even
if the checkChangeLogLocation was set to false. Spring Boot's check
would pass but Liquibase would fail later making this property redundant.

Fixes gh-16232
5 years ago
Stephane Nicoll f021c227e1 Polish 5 years ago
Stephane Nicoll 45915d085e Merge branch '2.1.x'
Closes gh-17767
5 years ago
Stephane Nicoll eb26492eef Polish 5 years ago
Michael Simons 274098f2e2 Refine back-off strategy of Neo4j SessionFactory
This commit separates the auto-configuration of the `SessionFactory` in
an isolated class so that the rest of the auto-configuration is still
applied if the user provides a custom `SessionFactory` bean.

See gh-17662
5 years ago
Madhura Bhave e06b06d817 Polish "Support RFC 8414 in JwtDecoders and ClientRegistrations"
See gh-17761
5 years ago
HaiTao Zhang 8baec96453 Support RFC 8414 in JwtDecoders and ClientRegistrations
See gh-17761
5 years ago
Madhura Bhave f7f858bce8 Merge branch '2.1.x'
Closes gh-17759
5 years ago
Madhura Bhave 5f3364326b Configure interceptors for WelcomePageHandlerMapping
Fixes gh-16309
5 years ago
Stephane Nicoll bee373d6cf Start building against Spring HATEOAS 1.0 snapshots
See gh-17755
5 years ago
Stephane Nicoll da0ab06d1a Merge branch '2.1.x'
Closes gh-17754
5 years ago
Stephane Nicoll f2fd169c3a Rename restClient to elasticsearchRestClient
For consistency, similar beans have been renamed as well.

Closes gh-17751
5 years ago
Stephane Nicoll 1ec8e822a1 Fix broken build 5 years ago
Stephane Nicoll 48e07c8fda Merge branch '2.1.x'
Closes gh-17753
5 years ago
Stephane Nicoll fb0fccf3c7 Polish "Create RestClient from a RestHighLevelClient if available"
This significantly rework the auto-configuration to reflect the order
in which things are expected. Rather than keeping a conceptual cycle
between the builder and the two inner classes that are processed first,
the configuration is now split in three parts:

* The builder that is required and common
* The configuration when the HighLevelClient is available
* The RestClient configuration when that's not the case

See gh-17488
5 years ago
Dmytro Nosan 0e87b9c163 Create RestClient from a RestHighLevelClient if available
See gh-17488
5 years ago
Phillip Webb 34c31ce099 Remove BeanTypeRegistry
Remove `BeanTypeRegistry` and rely entirely on standard calls Spring
Framework APIs.

Closes gh-17594
5 years ago
Phillip Webb da4f436140 Change SearchStrategy EXHAUSTIVE to TYPE_HIERARCHY
Fixup references following upstream Spring Framework change.
5 years ago
Johnny Lim 2c2ee92a39 Remove ConditionEvaluationReportLoggingListener in a test
See gh-17742
5 years ago
Stephane Nicoll c08fe65429 Merge branch '2.1.x'
See gh-17744
5 years ago
Stephane Nicoll dc4e67f5dd Remove useless classpath override 5 years ago
Stephane Nicoll 44a0afcec3 Polish "Allow for custom EntityMapper bean"
See gh-17661
5 years ago
P.J. Meisch a1cf665f98 Allow for custom EntityMapper bean
See gh-17661
5 years ago
Stephane Nicoll e52d398771 Adapt to recent changes in Spring Security snapshots 5 years ago
dreis2211 8d2f2b75bd Upgrade to AssertJ 3.13.1
See gh-17690
5 years ago
Madhura Bhave b6754f6f20 Fix test 5 years ago
Madhura Bhave 805264a13c Merge pull request #17646 from htztomic
* pr/17646:
  Polish "Default password shouldn't be generated for resource server"
  Default password should not be generated when using resource server

Closes gh-17646
5 years ago
Madhura Bhave e184298c50 Polish "Default password shouldn't be generated for resource server"
See gh-17646
5 years ago
HaiTao Zhang 1b0cf7bd22 Default password should not be generated when using resource server
See gh-17646
5 years ago
Phillip Webb 6675f49334 Switch to multi-line security configuration
Now that we have lambda style security configuration we can further
improve readability by switching to one statement per line.

See gh-17525
5 years ago
Stephane Nicoll 858199a2fa Only configure Spring Data jdbc if a transaction manager is present
This commit adds an extra condition to JdbcRepositoriesAutoConfiguration
so that it doesn't scan for repositories if a transaction manager is not
available as this dependency is now mandatory.

Closes gh-17654
5 years ago
Stephane Nicoll 97907aac30 Polish 5 years ago
Johnny Lim a80749ed81 Add missing assertion in dispatcherServletCustomConfig()
See gh-17648
5 years ago
Madhura Bhave 3423dbf6ac Add transaction manager in Spring Data jdbc tests
See gh-17654
5 years ago
Madhura Bhave 39a7b9da38 Switch to lambda style security configuration
Closes gh-17525
5 years ago
Stephane Nicoll b79de1e7e3 Fix broken build 5 years ago
Brian Clozel 5beb7edfbb Reinstate RSocket codecs configuration ordering
Since spring-projects/spring-framework#23314 and the following commit
spring-projects/spring-framework@be4facef1b, the RSocket codec selection
is relaxed and the order of configured commits matters again.

This commit ensures that the CBOR codec is configured ahead of the JSON
codec so that it can be chosen first if no data mime type is specified
when a connection is established with a client requester.
5 years ago
Brian Clozel 1996952e68 Update RSocket configuration after Framework changes
Since spring-projects/spring-framework#23314, the `RSocketStrategies`
provide more codecs by default, and there is no need to order them to
avoid conflicts during mime type selection.

This commit also ensures that the `PayloadDecoder.ZERO_COPY` is
configured on the RSocket server if the configured `DataBufferFactory`
is compatible with that strategy.
5 years ago
Dmytro Nosan efce9388e7 Trim OAuth2 provider property whitespace
Update `OAuth2ClientPropertiesRegistrationAdapter` to trim whitespace
of the "provider" property.

See gh-17497
5 years ago
Phillip Webb 8bc780762a Merge branch '2.1.x' 5 years ago
Phillip Webb fb1dd8fe93 Merge branch '2.0.x' into 2.1.x 5 years ago
Phillip Webb 913e831f4e Merge '1.5.x' into 2.0.x 5 years ago
dreis2211 c8097692ea Align JavaVersion.NINE name with JDK versioning
See gh-17611
5 years ago
Johnny Lim 43345b36e6 Polish
See gh-17616
5 years ago
Stephane Nicoll 690019ba8f Polish "Disable tests that are failing on Java 13"
See gh-17607
5 years ago
Stephane Nicoll 5f3fff6470 Disable tests that are failing on Java 13
Hazelcast YAML support does not work with Java 13 so this commit
disables relevant tests when Java 13 is detected

See https://github.com/hazelcast/hazelcast/issues/15348

See gh-17607
5 years ago
Brian Clozel 53afbbe233 Update RouteMatcher configuration for RSocket
This commit updates the `RouteMatcher` configuration after the latest
Spring Framework changes. The default route matcher implementation based
on the `PathPattern` infrastructure is now tailored for the messaging
use case (path separator, path encoding options and trailing separator).

See spring-projects/spring-framework#23310
5 years ago
Stephane Nicoll 3c7ac4fe7f Polish 5 years ago
Stephane Nicoll 55079c3a80 Merge branch '2.1.x'
Closes gh-17602
5 years ago
Stephane Nicoll 1661da8774 Polish "Configure ActiveMQConnectionFactory properly without spring-jms"
See gh-17531
5 years ago
Dmytro Nosan 77b52b993b Configure ActiveMQConnectionFactory properly without spring-jms
See gh-17531
5 years ago
adavid9 6211a682d6 Replace deprecated media type
See gh-17596
5 years ago
Phillip Webb ff9f5fd1c7 Polish OnBeanCondition
Polish `OnBeanCondition` and make it easier to remove `BeanTypeRegistry`
in the future.

See gh-17594
5 years ago
Andy Wilkinson ea1dc85d50 Isolate Jackson2ObjectMapperBuilder mutation
Previously, Jackson2ObjectMapperBuilder was a singleton bean. This
meant that if it was injected and mutated in one injection point,
usage in a subsequent injection point would see the previous
injection point's mutation which can lead to unexpected failures.

This commit updates the auto-configuration of the builder to make it
a protoype bean. Mutation of the builder that is intended to apply
globally should be made using a customizer.

Closes gh-17477
5 years ago
Andy Wilkinson c7d2799f4e Add configuration property for DispatcherServlet event publishing
Closes gh-17500
5 years ago
Stephane Nicoll 3dd5426ea5 Polish "Adjust to changes in Spring AMQP 2.2 snapshots"
See gh-17587
5 years ago
dreis2211 e71a417399 Adjust to changes in Spring AMQP 2.2 snapshots
See gh-17587
5 years ago
Stephane Nicoll dd2f20fcd2 Polish "Add support for configuring Tomcat's relaxed path and query chars"
See gh-17510
5 years ago
dirkdeyne 1fee797af7 Add support for configuring Tomcat's relaxed path and query chars
See gh-17510
5 years ago
dreis2211 2038fac825 Remove testsupport.assertj package
See gh-17557
5 years ago
Andy Wilkinson 3bf5cf1124 Merge branch '2.1.x'
Closes gh-17562
5 years ago
Andy Wilkinson b725c60177 Deprecate DeploymentInfo customization with reactive Undertow
Fixes gh-17555
5 years ago
Phillip Webb a9ba7080ce Merge branch '2.1.x' 5 years ago
Phillip Webb d567261790 Polish 5 years ago
Andy Wilkinson dad7fb4f6d Add NettyServerCustomizer beans to the auto-configured factory
Closes gh-17556
5 years ago
Andy Wilkinson ea1139755d Ensure that customizers registered multiple times are only called once
Closes gh-17264
5 years ago
Andy Wilkinson 73f7a9318f Merge branch '2.1.x'
Closes gh-17546
5 years ago
Andy Wilkinson e84477cfe2 Only perform Quartz DataSource init when using JDBC store
Fixes gh-17545
5 years ago
Stephane Nicoll 1f7615a964 Polish "Add support for configuring Spring Session SaveMode"
See gh-17514
5 years ago
Vedran Pavic e073792448 Add support for configuring Spring Session SaveMode
See gh-17514
5 years ago
Andy Wilkinson 8aed06452d Allow custom resource handlers to provide favicon.ico
Closes gh-17381
5 years ago
Phillip Webb eff1147ccc Rename classpath runner package
Remove `runner` since we're no longer tied to JUnit 4.

See gh-17491
5 years ago
Phillip Webb 1117fdb2b3 Make ModifiedClassPathExtension package private
Meta-annotate `ClassPathExclusions` and `ClassPathOverrides` with
so that the `ModifiedClassPathExtension` no longer needs to be
used directly.

See gh-17491
5 years ago
dreis2211 0f0278e69b Migrate ModifiedClassPath tests to JUnit 5
Migrate the remaining JUnit 4 tests to JUnit 5, making use of the
new `ModifiedClassPathExtension`.

See gh-17491
5 years ago
dreis2211 b0bf2dd7ab Migrate to ApplicationContextRunner
Migrate a new tests to use the `ApplicationContextRunner`.

See gh-17491
5 years ago
Phillip Webb 0cb6a7f47d Polish 5 years ago
Phillip Webb 01933f9b06 Merge previously split strings
Merge some string lines that were previously split because of the
90 chars wide formatting.
5 years ago
Phillip Webb c3816bfe7b Polish output capture names 5 years ago
Phillip Webb b7e092e821 Fix upstream RSocket method renames
Align with the recent upstream Spring Framework changes triggered by
their issue #23170.
5 years ago
Andy Wilkinson dc0432665b Use ephemeral ports rather than 8080 in our tests
Closes gh-17025
5 years ago
Andy Wilkinson 1fffe0ab3e Merge branch '2.1.x'
Closes gh-17482
5 years ago
Dmytro Nosan 93d0427fb5 Polish AbstractDependsOnBeanFactoryPostProcessor
See gh-17480
5 years ago
Andy Wilkinson 47f4bb0d64 Merge branch '2.1.x'
Closes gh-17481
5 years ago
Andy Wilkinson f753c31988 Polish "Set up MongoClient beans' dependencies by type rather than name"
See gh-16627
5 years ago
ielatif 39f1039425 Set up MongoClient beans' dependencies by type rather than name
See gh-16627
5 years ago
Andy Wilkinson 6adcd75481 Merge branch '2.1.x'
Closes gh-17479
5 years ago
Andy Wilkinson 80650f485d Polish "Allow depended on beans to be identified by type"
See gh-17020
5 years ago
Dmytro Nosan 9923ffe9bd Allow depended on beans to be identified by type
Prior to this commit, `AbstractDependsOnBeanFactoryPostProcessor`
could only identify depended on beans by name.

See gh-17020
5 years ago
Brian Clozel 3c28622ebc Add support for reactor-tools debug agent
The `reactor-tools` dependency now brings a new Reactor Debug Agent
which instruments loaded classes for better Reactor stacktraces.
This commit removes the `spring.reactor.stacktrace-mode.enabled`
configuration property since the related Reactor Hook is about to be
removed.
As a replacement, we're introducing `spring.reactor.debug-agent.enabled`
which tells whether the Reactor Debug Agent should be loaded, given that
the `reactor-tools` dependency is available. This option is enabled by
default, since adding the dependency on classpath is a strong signal
already.

Fixes gh-17128
5 years ago
Brian Clozel b1a3849b27 Disable Jackson XML support in RSocket codecs
Prior to this commit, having the `spring-boot-starter-rsocket` and the
`jackson-dataformat-xml` dependencies on classpath would result in a
`ClassCastException` when the RSocket auto-configuration tries to
configure Jackson CBOR codecs for RSocket strategies.

This commit disables the Jackson XML support for the CBOR codec in
RSocket.

Fixes gh-17425
5 years ago
Dmytro Nosan fd9e8503bb Polish BatchAutoConfiguration
See gh-17462
5 years ago
Andy Wilkinson edff0f87e2 Merge branch '2.1.x'
Closes gh-17466
5 years ago
Andy Wilkinson acd9b61c8e Make Batch JPA auto-configuration back off without a DataSource
Fixes gh-17465
5 years ago
Andy Wilkinson a40bc64f6e Merge branch '2.1.x'
Closes gh-17463
5 years ago
Andy Wilkinson c5241f0e82 Remove accidental usage of com.hazelcast.util.Base64
Closes gh-17461
5 years ago
Andy Wilkinson d93c79316d Align with body method changes in RequestBodySpec
Closes gh-17460
5 years ago
Andy Wilkinson 3e6c15c451 Deprecate auto-configuration for Joda-Time
Closes gh-17419
5 years ago
Johnny Lim 426ef749db Polish
See gh-17413
5 years ago
Madhura Bhave 939a247d87 Merge pull request #17448 from izeye
* pr/17448:
  Fix typo

Closes gh-17448
5 years ago
Johnny Lim e42f4d0279 Fix typo
See gh-17448
5 years ago
Andy Wilkinson b0626bca32 Merge branch '2.1.x'
Closes gh-17454
5 years ago
Andy Wilkinson 02bea78229 Retain as much Batch auto-config as possible without Spring JDBC
Closes gh-17451
5 years ago
Andy Wilkinson 5b7c0e0c58 Merge branch '2.1.x'
Closes gh-17453
5 years ago
Andy Wilkinson a023f308ed Make JDBC-based batch configurer back off without a DataSource
Closes gh-17449
5 years ago
Andy Wilkinson 072453bf58 Polish "Add support for configuring a Batch-specific DataSource"
See gh-17375
5 years ago
Dmytro Nosan f449665e2a Add support for configuring a Batch-specific DataSource
See gh-17375
5 years ago
Andy Wilkinson 3ba25b9ee9 Simplify class loading check in pooled DataSource condition
Closes gh-17284
5 years ago
Andy Wilkinson b39479bc07 Polish "Add config property for Kafka consumer isolation level"
See gh-17389
5 years ago
Ryan Dunckel 1b8f955fec Add config property for Kafka consumer isolation level
See gh-17389
5 years ago
Andy Wilkinson 2816635418 Polish 5 years ago
Andy Wilkinson 6a777a7f9b Disable HiddenHttpMethodFilter by default
HiddenHttpMethodFilter can be problematic as it causes early
consumption of a request body if the body may contain parameters. This
happens as the filter needs to read the parameters to see if an
_method parameter is present. The filter is only beneficial for web
applications that are the hidden HTTP method functionality but is
potentially detriimental to all applications that are not. As such
we no longer believe that it should be enabled by default and users
should be required to opt in.

Closes gh-16953
5 years ago
Andy Wilkinson 2af815f2cf Merge branch '2.1.x'
Closes gh-17432
5 years ago
Andy Wilkinson 7f85aba546 Auto-configure Data Mongo if user provides MongoDbFactory but no client
Previously, if a user defined a MongoDbFactory bean but did not define
a client bean, MongoDataAutoConfiguration would back off leaving the
context without a MongoTemplate, etc.

This commit reworks the auto-configuration so that only the
auto-configuration of a MongoDbFactory is dependent on the existence
of a Mongo client bean. Auto-configuration of the other components
that depend on a MongoDbFactory will now continue in the absence of a
Mongo client bean.

Closes gh-17416
5 years ago
dreis2211 7c6fd31d06 Use Spring 5 module of Jersey
See gh-17412
5 years ago
Madhura Bhave 3bd7760f9c Polish "Allow Undertow's options to be configured via the environment
See gh-17356
5 years ago
HaiTao Zhang 417f4dd7fa Allow Undertow's options to be configured via the environment
See gh-17356
5 years ago
Phillip Webb a66c4d3096 Unify method visibility of private classes
Apply checkstyle rule to ensure that private and package private
classes do not have unnecessary public methods. Test classes have
also been unified as much as possible to use default scoped
inner-classes.

Closes gh-7316
5 years ago