Commit Graph

1738 Commits (4f7f8ff0c710a4fcfe4f4a3bd1373bc6f9683346)

Author SHA1 Message Date
Stephane Nicoll e560b7f6ba Remove public modifier on JUnit5 lifecycle methods
See gh-17292
5 years ago
Stephane Nicoll 374e02cac8 Simplify HibernateJpaAutoConfiguration classes check
This commit removes the now outdated `HibernateEntityManagerCondition`
in favour of a simple check of `SessionImplementor`. As of
Hibernate 5.2, a single `hibernate-core` jar is required so a single
class check is enough.

Closes gh-17288
5 years ago
Stephane Nicoll 8a7609f940 Simplify HibernateJpaAutoConfiguration classes check
This commit removes the now outdated `HibernateEntityManagerCondition`
in favour of a simple check of `SessionImplementor`. As of
Hibernate 5.2, a single `hibernate-core` jar is required so a single
class check is enough.

Closes gh-17283
5 years ago
Brian Clozel 7857dd2d72 Update after RSocket changes in Spring Framework
Spring Framework recently removed the `MessageHandlerAcceptor` (which is
a sub-class of `RSocketMessageHandler`).
Instead of implementing directly the `SocketAcceptor` contract, it now
exposes them through `clientAcceptor()` and `serverAcceptor()` methods.

See gh-17280
5 years ago
Phillip Webb 69fbd8f20c Merge branch '2.1.x'
Closes gh-17227
Closes gh-17228
6 years ago
Phillip Webb 692bda1595 Polish "Fix connection timeout configuration for Netty"
See gh-16535
6 years ago
ayudovin b0e4c716d3 Fix connection timeout configuration for Netty
Update `NettyWebServerFactoryCustomizer` to deal with the fact that
Netty treats `0` and negative connection timeout values differently to
Tomcat, Undertow and Jetty.

See gh-16535
6 years ago
Andy Wilkinson 9d355f00e1 Merge branch '2.1.x'
Closes gh-17218
6 years ago
Andy Wilkinson 5dc2339ec2 Polish "Consider properties from @AutoConfigureTestDatabase"
See gh-16814
6 years ago
András Deák 92256c80d0 Consider properties from @AutoConfigureTestDatabase
Both Flyway and Liquibase makes use of DataSourceProperties to get
default properties. Previously, both used strictly the configuration
properties and failed to consider embedded datasource properties
autoconfigured by @AutoConfigureTestDatabase. In case a database layer
test e.g. @JdbcTest relies on the autoconfigured embedded datasource,
Flyway and Liquibase autoconfiguration fails as they are not aware of
the embedded datasource properties.

See gh-16814
6 years ago
Madhura Bhave c6dae5764e Add bindOrCreate for constructor based binding
Deprecate the existing `BindResult.orElseCreate` method in favor of
`bindOrCreate` methods on the `Binder`. These new methods allow us to
implement custom creation logic depending on the type of object being
bound. Specifically, it allows constructor based binding to create new
instances that respect the `@DefaultValue` annotations.

Closes gh-17098

Co-authored-by: Phillip Webb <pwebb@pivotal.io>
6 years ago
Andy Wilkinson 48adfe626c Log H2 console path and JDBC URL on startup
Closes gh-17063
6 years ago
Madhura Bhave 0d2e44151b Fix tests following Spring Security changes 6 years ago
Phillip Webb 9db20313a1 Polish "Add Printer and Parser beans to conversion service"
Extract common registration code and make use of the Spring Framework
registration methods.

See gh-17064
6 years ago
Dmytro Nosan 955eaa87ae Add Printer and Parser beans to conversion service
Update `WebMvcAutoConfiguration` and `WebFluxAutoConfiguration` so that
`Printer<T>` and `Parser<T>` beans are automatically registered with
the conversion service.

Prior to this commit only `GenericConverter`, `Converter` and
`Formatter` beans were automatically registered.

See gh-17064
6 years ago
Stephane Nicoll 54c72cf39f Polish 6 years ago
Stephane Nicoll 985c8f7598 Polish RSocket support 6 years ago
Andy Wilkinson 704b5fb2ee Enable encoding of message/x.rsocket.routing.v0 requests
Closes gh-17135
6 years ago
Phillip Webb e0aa90cf32 Fix incomplete polish of RedisSessionProperties
Fix polish commit from 919913ae66 to correctly name the property
getter/setters.

See gh-17022
6 years ago
Phillip Webb 919913ae66 Polish "Add session property for ConfigureRedisAction"
See gh-17022
6 years ago
Dmytro Nosan a0fabc9851 Add session property for ConfigureRedisAction
Add a new property to `RedisSessionProperties` that allows the default
`ConfigureRedisAction` to be changed. Users can still also configure
the action using a `@Bean`.

See gh-17022
6 years ago
Phillip Webb aad21d1996 Polish "Support default headers with RestTemplateBuilder"
Broaden the scope of customizer support so that instead of focusing
just on headers, we can now customize any outgoing `HttpClientRequest`.
Also update auto-configuration to automatically add any
`RestTemplateRequestCustomizer` beans to the builder.

See gh-17091
6 years ago
Andy Wilkinson 9b5cb4f9b8 Remove need for public constructor on inner-class
Closes gh-17086
6 years ago
Brian Clozel 7a9d1a1e34 Change default Freemarker template file extension
This commit changes the default file extension for Freemarker templates
from `*.ftl` to `*.ftlh`. This commit also enables by default the
Freemarker setting `"recognize_standard_file_extensions"` to ensure that
HTML escaping is performed by default in Spring Boot applications.

Applications should adapt to this change by changing the file extensions
of existing templates to `.ftlh`.

Closes gh-15131
6 years ago
Phillip Webb b3d5cd538d Add JUnit 5 checkstyle rules
Add a rule to enforce JUnit 5 usage and conventions.

Closes gh-17093
6 years ago
Madhura Bhave 2560b54f7c Add configuration support for Opaque Token authentication
Closes gh-15872
6 years ago
Andy Wilkinson 75e45fd239 Switch to @DisableWithoutTestcontainers
Closes gh-17092
6 years ago
Phillip Webb 266d6334b2 Fix checkstyle RedundantModifier test violations 6 years ago
Phillip Webb cde4f0d688 Fix checkstyle violations 6 years ago
Andy Wilkinson b18fffaf14 Move tests to JUnit 5 wherever possible 6 years ago
Andy Wilkinson aef92b9295 Merge branch '2.1.x'
Closes gh-17079
6 years ago
Andy Wilkinson 24925c3dae Merge branch '2.0.x' into 2.1.x
Closes gh-17078
6 years ago
Andy Wilkinson c6c139d980 Merge branch '1.5.x' into 2.0.x 6 years ago
Brian Clozel 5b2de5c81d Configure PathPattern for RSocket routing
This commit configures a `PathPatternRouteMatcher` in the RSocket
support if spring-web is on the classpath. This `RouteMatcher`
implementation is more efficient than the `SimpleRouteMatcher`, which is
based on the `AntPathMatcher`.

Closes gh-16865
6 years ago
Brian Clozel 16c521a9e6 Auto-configure reactive Elasticsearch components
As of Spring Data Moore, a new reactive template and the
corresponding repositories support have been added.

This commit auto-configures a `ReactiveElasticsearchTemplate`
with the configuration properties under the
`spring.data.elasticsearch.client.reactive` namespace.
To enable this feature, applications require both Spring Data
Elasticsearch dependencies (typically
`spring-boot-starter-data-elasticsearch`) and dependencies
for a `WebClient` (often `spring-boot-starter-webflux`).

The support for the reactive Elasticsearch repositories is
also provided.

Closes gh-16214
6 years ago
Phillip Webb db75347eb6 Merge branch '2.1.x' 6 years ago
Phillip Webb 0ef331018e Merge branch '2.0.x' into 2.1.x 6 years ago
Phillip Webb 7fc01971ed Merge branch '1.5.x' into 2.0.x 6 years ago
Phillip Webb d306b31ce9 Merge branch '2.1.x' 6 years ago
Phillip Webb ccfbd03482 Merge branch '2.0.x' into 2.1.x 6 years ago
Phillip Webb b442d3b906 Merge branch '1.5.x' into 2.0.x 6 years ago
Phillip Webb 5fba43aa31 Merge branch '1.5.x' into 2.0.x 6 years ago
Brian Clozel c74badd4f2 Auto-configure Elasticsearch REST client in Spring Data
This commit auto-configures the Elasticsearch REST client support
as a template for Spring Data Elasticsearch. As of this commit,
using the transport client is still possible but developers
should migrate.

This commit also removes the deprecated annotation on the
Elasticsearch auto-configuration for the transport client, since
this deprecation notice is already present on the configuration
property.

Closes gh-17024
Closes gh-16542
6 years ago
Stephane Nicoll ae5b5be597 Reset flag after each test as well to avoid side effects 6 years ago
Stephane Nicoll f30e29a4ad Rename spring.reactor.stacktrace-mode.enabled property
Closes gh-16537
6 years ago
Gary Russell 23cff6fb09 KafkaAutoConfigurationIntegrationTests to JUnit5
See gh-17034
6 years ago
Issam El-atif 4ac1407af1 Use new JettyClientHttpConnector constructor
Simplify `ClientHttpConnectorConfiguration`by using the recently
introduced `JettyClientHttpConnector` constructor.

See gh-17015
6 years ago
Andy Wilkinson 0644a79401 Repackage output capture and always use extension declaratively
Closes gh-17029
6 years ago
Phillip Webb d11d5ceb29 Split up JUnit 5 OutputCapture class
Split the JUnit 5 `OutputCapture` class into separate `OutputExtension`
and `CapturedOutput` classes. The JUnit 5 callback methods are now
contained only in the `OutputExtension` class so no longer pollute the
public API that users will interact with.

The `CapturedOutput` class has also been updated to capture System.err
and System.out separately to allow distinct assertions if required.

Closes gh-17029
6 years ago
Phillip Webb ad5e905bd7 Update copyright header of changed files 6 years ago
Phillip Webb 68aec8b6ee Polish 6 years ago
Dmytro Nosan 54061bd59f Polish CassandraDataAutoConfiguration
See gh-17004
6 years ago
dreis2211 38c21f58b8 Add missing @Test annotation
See gh-17012
6 years ago
Phillip Webb c84c9409bd Polish 6 years ago
Andy Wilkinson 880721557b Polish "Auto-configure Flyway and Liquibase when there's a URL but no DataSource"
See gh-16850
6 years ago
ilya.lukyanovich@dataart.com 3ca73bf00d Auto-configure Flyway and Liquibase when there's a URL but no DataSource
See gh-16850
6 years ago
Andy Wilkinson 69a298231c Polish "Configure FluentConfiguration to use ResourceLoader's ClassLoader"
See gh-16947
6 years ago
Alan Gomes cc5bd51343 Configure FluentConfiguration to use ResourceLoader's ClassLoader
See gh-16947
6 years ago
Johnny Lim 0741e6470f Use MediaType.APPLICATION_CBOR constant
See https://github.com/spring-projects/spring-framework/pull/23042

Closes gh-16986
6 years ago
Andy Wilkinson 86380ab8db Add missing package-info.java files 6 years ago
Phillip Webb eb38c3abb7 Fix test broken by additional customizer
See gh-16498
6 years ago
Phillip Webb 9a6415375d Polish 6 years ago
Phillip Webb 6e9f2e42af Merge branch '2.1.x'
Closes gh-16992
6 years ago
Phillip Webb 6913ea24b0 Polish "Fix NoClassDefFound when missing Spring Security"
See gh-16889
6 years ago
Vedran Pavic e9bd11ee83 Fix NoClassDefFound when missing Spring Security
Update Spring Session auto-configuration to ensure that the
`DefaultCookieSerializer` doesn't break when Spring Security is not
present on the classpath.

Closes gh-16889
6 years ago
Phillip Webb df55d73bff Merge branch '2.1.x'
Closes gh-16990
6 years ago
Phillip Webb 278a0866cd Polish "Fix Spring Data Cassandra auto-configure condition"
See gh-16971
6 years ago
Dmytro Nosan be435130e6 Fix Spring Data Cassandra auto-configure condition
Update `CassandraDataAutoConfiguration` do that it's only applied when
a `Cluster` bean is found.

Fixes gh-16971
6 years ago
Andy Wilkinson 0eb6c0ddd3 Defer disabling registry until Tomcat server is being created
Closes gh-16498
6 years ago
Andy Wilkinson b603cd5d4b Disable Tomcat's MBean Registry by default
Closes gh-16498
6 years ago
Brian Clozel d46de7abc4 Polish "Set UTF-8 charset for whitelabel HTML error pages"
Closes gh-16611
6 years ago
qxo 64a8326989 Set UTF-8 charset for whitelabel HTML error pages
This commit changes the HTTP response Content-Type for whitelabel
error pages with Spring WebFlux.

See gh-16611
6 years ago
Brian Clozel 0b70862627 Fix RSocket websocket config with WebFlux
In the case of a WebFlux + RSocket over websocket setup, the RSocket
auto-configuration would not set up the required routes; only the
websocket endpoint for RSocket would be available, overriding the
handler configured for WebFlux.

This commit introduces `NettyRouteProvider`. Components implementing
that interface can contribute HTTP routes to the Reactor Netty server
being built.

* if none is provided, the regular handler setup is used
* if one or more routes are provided, routes are sorted and added before
the WebFlux handler (acting as a default)

Fixes gh-16826
6 years ago
Brian Clozel 45507c475b Configure String codecs in RSocket strategies
Closes gh-16924
6 years ago
Brian Clozel b2e395db7a Avoid codec auto-configuration when WebFlux is not present
This commit prevents the `CodecsAutoConfiguration` from being processed
if spring-webflux is not on classpath, since it is only useful for the
WebFlux server infrastructure or `WebClient`.

Closes gh-15690
6 years ago
Andy Wilkinson 23f803c6b6 Upgrade to Hamcrest 2.1, switch to hamcrest artifact from -core and -library
Closes gh-15555
6 years ago
dreis2211 27ca7e17d9 Fix deprecated StandardAnnotationMetadata usages
Closes gh-16930
6 years ago
Andy Wilkinson 46cdd6ecb2 Merge branch '2.1.x'
Closes gh-16939
6 years ago
Andy Wilkinson da12ad0ca5 Make ReactiveSecurityAutoConfiguration back off without spring-webflux
Closes gh-16934
6 years ago
Stephane Nicoll 74208bb1a7 Polish "Auto-configure Kafka listener container with rebalance listener"
Closes gh-16755
6 years ago
Gary Russell abdc2e1b4f Auto-configure Kafka listener container with rebalance listener
This commit associates a `ConsumerAwareRebalanceListener` to the
auto-configured listener container factory if a single instance is found
in the context.

See gh-16755
6 years ago
Stephane Nicoll 2949561bf6 Polish "Add support for Couchbase's role-based access"
Closes gh-16389
6 years ago
Enes Açıkoğlu 3386856ccf Add support for Couchbase's role-based access
See gh-16389
6 years ago
Stephane Nicoll 3c46b9e83d Polish "Add configuration property for Spring Kafka's missingTopicsFatal"
Closes gh-16740
6 years ago
Gary Russell 1583ce8d26 Add configuration property for Spring Kafka's missingTopicsFatal
See gh-16740
6 years ago
Stephane Nicoll 275d794553 Make sure JdbcTemplateConfiguration is imported once
Closes gh-13806
6 years ago
Phillip Webb 79e05c770f Merge branch '2.1.x' 6 years ago
Phillip Webb ed998ef0d3 Update copyright header of changed files 6 years ago
Phillip Webb a82b5266ae Merge branch '2.1.x'
Closes gh-16858
6 years ago
Phillip Webb e2dc278cae Use default SslContextFactory for JettyClient
Update the auto-configured Jetty `HttpClient` so that a default
`SslContextFactory` is used.

Prior to this commit connecting to https URLs would cause a
`NullPointerException`.

Fixed gh-16810
6 years ago
Stephane Nicoll 128b41d43a Configure JmsMessagingTemplate default destination
Closes gh-16227
6 years ago
Brian Clozel e8d39a1539 Add support for CBOR codecs in RSocket
This commit auto-configures CBOR (see https://cbor.io/) codecs in the
RSocketStrategies, using Jackson binary format support.

The required dependency is added to the rsocket starter. Binary codecs
are well suited for RSocket payloads, so this codec is added first to
the list of codecs (before the JSON one already supported).

Closes gh-16830
6 years ago
Stephane Nicoll 1c3a91883d Remove reference to spring.datasource.jmx-enabled
This commits moves the single use of that property to the already
existing Tomcat-specific one.

Closes gh-16673
6 years ago
Brian Clozel 20dfeddbb3 Auto-configure RSocketRequester.Builder
This commit auto-configures a prototype `RSocketRequester.Builder` bean
for building requester instances. This builder is pre-configured with
auto-detected `RSocketStrategies` (same as the server side).

Closes gh-16280
6 years ago
Brian Clozel 2e504b4c3c Migrate from NCSARequestLog to CustomRequestLog
Closes gh-16416
6 years ago
Brian Clozel 930186e505 Merge branch '2.1.x' 6 years ago
Marcus Eisele 94a9748ce0 Fix 'spring.resources.cache.period' for WebMvc
Before this change it got overwritten by forwarding an empty
CacheControl to Spring. Spring itself sets CacheSeconds already
correctly in absence (=null) of a CacheControl.

Also:
* Fixes bug in WebMvcAutoConfigurationTests.cachePeriod which
prevented it to assert anything

See gh-16488
Closes gh-16730
6 years ago
Brian Clozel 0b4934d140 Fix DefaultErrorWebExceptionHandler test 6 years ago
Andy Wilkinson 552345fcd1 Disable more @Bean method proxying
Previously, due to a quirk in Spring Framework, it was necessary to use bean method
proxying in @Configuration classes that define one or more FactoryBeans. This quirk has
now been addressed so this commit disables bean method proxying where it is now no longer
needed.

Closes gh-16533
6 years ago
Gary Russell ef39ff8988 Start building against Spring Kafka 2.3.0.M2 snapshots
See gh-16739
See gh-16752
6 years ago
Andy Wilkinson 5514192672 Merge branch '2.1.x'
Closes gh-16809
6 years ago
Andy Wilkinson 96f3a482f0 Polish "Enable minIdle by allowing timeBetweenEviction runs to be configured"
See gh-16703
6 years ago
Gemini Kim 1659d46028 Enable minIdle by allowing timeBetweenEviction runs to be configured
See gh-16703
6 years ago
Andy Wilkinson bf294a762a Polish 6 years ago
Johnny Lim a56867da27 Consistent use of PropertyMapper::asInt
See gh-16738
6 years ago
Johnny Lim 1548fb655c Polish FlywayProperties
See gh-16737
6 years ago
Andy Wilkinson ece87cc4cc Polish "Provide control over how a Cassandra Cluster is created"
See gh-16702
6 years ago
Steffen Folman Qvistgaard 5daf310bf4 Provide control over how a Cassandra Cluster is created
See gh-16702
6 years ago
Madhura Bhave 684a1c7a3c Migrate tests to JUnit5 testcontainer extensions
Closes gh-15456
6 years ago
Madhura Bhave 1db1c8b03c Validate our own tests work with JUnit5 and the vintage engine
Closes gh-14737

Co-authored-by: Stephane Nicoll <snicoll@pivotal.io>
6 years ago
Brian Clozel 1f897ad923 Fix DefaultErrorWebExceptionHandler test 6 years ago
Johnny Lim 21b05bbafc Polish RSocketServerBootstrap bean name
Closes gh-16700
6 years ago
Johnny Lim cb0e3c793b Polish
Closes gh-16688
6 years ago
Stephane Nicoll 922ceed63a Polish "Auto-configure ReactiveStringRedisTemplate if necessary"
Closes gh-16604
6 years ago
Qiang Lee 866233bd2f Auto-configure ReactiveStringRedisTemplate if necessary
See gh-16604
6 years ago
Toshiaki Maki e203f6a5f5 Fix typo
Closes gh-16684
6 years ago
Johnny Lim e22c2e5687 Polish
Closes gh-16685
6 years ago
Stephane Nicoll 704da1750b Polish "Add support for Hazelcast YAML configuration"
Closes gh-16632
6 years ago
Rafal Leszko 82e18ae88f Add support for Hazelcast YAML configuration
Since Hazlecast 3.12, YAML configuration format is supported in
addition to XML. Therefore, this change makes Spring Boot automatically
discover not only `hazelcast.xml` (and `hazelcast-client.xml`), but also
`hazelcast.yaml` (and `hazelcast-client.yaml`).

See gh-16632
6 years ago
Phillip Webb 17aaf26590 Use consistent javadoc style for annotation links
Closes gh-13920
6 years ago
Phillip Webb 1e44aba772 Fix compiler warnings and polish
Fix various compiler warnings and apply a little polish.
6 years ago
Andy Wilkinson a0999dadb7 Merge branch '2.1.x'
Closes gh-16642
6 years ago
Andy Wilkinson ba0279be14 Remove race condition in TaskSchedulingAutoConfigurationTests
Closes gh-16640
6 years ago
Andy Wilkinson 915bde0e62 Use MIME decoder to read OAuth2 resource server public key
Fixes gh-16624
6 years ago
Madhura Bhave 23cf8565b1 Polish "Apply server customizer beans automatically"
Closes gh-16584
6 years ago
Sergey Serdyuk 8ff78ed4c3 Apply server customizer beans automatically
See gh-16584
6 years ago
Stephane Nicoll d55d6b35d9 Merge branch '2.1.x' 6 years ago
Stephane Nicoll 7b9471836b Polish "Improve DefaultCookieSerializer auto-configuration"
Closes gh-16513
6 years ago
Vedran Pavic 5e02541195 Improve DefaultCookieSerializer auto-configuration
Spring Session's own configuration support (i.e.
SpringHttpSessionConfiguration) will configure the default
DefaultCookieSerializer with rememberMeRequestAttribute if
SpringSessionRememberMeServices bean has been detected in the
application context.

In contrast, Spring Boot's auto-configured DefaultCookieSerializer does
not do this which results in a different out-of-the-box experience for
users that rely on Spring Session's remember-me integration.

This commit improves Spring Session DefaultCookieSerializer
auto-configuration to match Spring Session's behavior and make the
auto-configured DefaultCookieSerializer aware of
SpringSessionRememberMeServices bean.

See gh-16513
6 years ago
Phillip Webb b879972d0d Migrate to MergedAnnotations API
Migrate away from `AnnotationUtils` and `AnnotatedElementUtils`
when possible to the new `MergedAnnotations` API.

Closes gh-16551
6 years ago
Andy Wilkinson ca1a666f58 Polish "Add support for configuring remaining Undertow server options"
See gh-16278
6 years ago
Rafiullah Hamedy 186b1fae6d Add support for configuring remaining Undertow server options
This commit adds support for configuring Undertow's server options that were previously
not configurable via application properties. The additions are the following:

- allow-encoded-slash
- always-set-keep-alive
- decode-url
- max-cookies
- max-headers
- max-parameters,
- url-charset

See gh-16278
6 years ago
Stephane Nicoll 2cfcd2690e Polish "Allow to configure the Elasticsearch rest client timeouts"
Closes gh-15965
6 years ago
Dmytro Nosan 5bacb32557 Allow to configure the Elasticsearch rest client timeouts
See gh-15965
6 years ago
Stephane Nicoll e24c17d524 Polish "Add auto-configuration support for ReactiveGridFsTemplate"
Closes gh-16467
6 years ago
ayudovin d9c9ed1d52 Add auto-configuration support for ReactiveGridFsTemplate
See gh-16467
6 years ago
Stephane Nicoll 0f60555031 Polish "Complete Jetty Access Log configuration properties support"
Closes gh-16080
6 years ago
nicolas 55a5a26b95 Complete Jetty Access Log configuration properties support
See gh-16080
6 years ago
Andy Wilkinson 1eac4d6046 Support configuration of Flyway's Pro properties
Closes gh-14989
6 years ago
Johnny Lim 2b2afd785b Polish
Closes gh-16575
6 years ago
Stephane Nicoll b710dc71fe Polish "Use BatchErrorHandler when Kafka listener type is batch"
Closes gh-16499
6 years ago
Madhura Bhave bb7940f8e4 Use BatchErrorHandler when Kafka listener type is batch
Closes gh-16499
6 years ago
Phillip Webb 5f1bbf8c72 Update copyright header of changed files 6 years ago
Phillip Webb 2dfd916c96 Polish 6 years ago
Madhura Bhave bf6f9b4c43 Polish "Add property for mongo auto-index creation"
See gh-16454
6 years ago
ayudovin 2e9005de14 Add property to configure Mongo auto index creation
Closes gh-16454
6 years ago
Brian Clozel c0a360fd71 Fix imports ordering 6 years ago
Brian Clozel 71362299ae Polish RSocket server bootstrap
See gh-16021
6 years ago
Brian Clozel b35424478b Deprecate Elasticsearch transport and Jest clients
As of Spring Data Moore, the Elasticsearch high level REST client is
supported for Spring Data repositories. The transport client is now
deprecated and is likely to be removed in a future Spring Data release.

This commit deprecates the transport client and marks all the associated
configuration properties as deprecated. The Spring Boot starter depends
on the `spring-data-elasticsearch` project, which now depends on both
transport client and high level REST client.

This commit also deprecates the Jest client, as Spring Boot will focus
on supporting the high level REST client and the reactive client
provided by Spring Data - both being in sync with the fast release pace
of Elasticsearch.

Closes gh-15008
6 years ago
Madhura Bhave b4d6ac1f41 Fix javadoc 6 years ago
Madhura Bhave 7bbeeaa4d2 Fix build following Spring Security changes 6 years ago
Madhura Bhave 8fd8a9b618 Fix javadoc 6 years ago
Madhura Bhave 62ec8f373a Forwarded header auto-config should be conditional on missing bean
See gh-5677
6 years ago
Madhura Bhave 959e161555 Provide an option to use Spring's forwarded header support
Previously, if the `server.use-forward-headers` property
was set to true, X-Forwarded-* headers support was provided
at the server level. The property has been deprecated in favor
of `server.forward-headers-strategy` which can be also be configured
to use Spring's forwarded header support apart from native server support.

Closes gh-5677
6 years ago
Brian Clozel 9eb7260699 Polish RSocket server support
Relax the `NettyRSocketBootstrap` contract to allow all types of
`SocketAcceptor` implementations.

See gh-16021
6 years ago
Brian Clozel 2112e02eda Polish
Closes gh-15952
6 years ago
Dmytro Nosan 2c20d01e25 Add requestId info to ErrorAttributes in WebFlux
See gh-15952
6 years ago
Brian Clozel b33944b53f Add RSocket server support with Spring Messaging
This commit adds support for RSocket server applications.
The auto-configuration will either add RSocket support to an existing
Reactor Netty server in a WebFlux application (as a WebSocket endpoint),
or bootstrap a brand new RSocket server instance.

Spring Boot will also auto-configure the Spring Messaging infrastructure
that supports Controller beans with `@MessageMapping` annotated methods.

Fixes gh-16021
6 years ago
Vedran Pavic bbaa98175f Upgrade to Hazelcast 3.12
Closes gh-16503
6 years ago
Stephane Nicoll ee735a61ce Polish
See gh-15814
6 years ago
Madhura Bhave 7054a33e70 Add support for public key file for OAuth2 resource server
Closes gh-15814
6 years ago
dreis2211 7042884042 Fix Thymeleaf deprecations
Closes gh-16478
6 years ago
Stephane Nicoll c432288ed1 Migrate ApplicationContext to common hierarchy
This commit migrates `AnnotationConfigReactiveWebApplicationContext`
parent to the `GenericApplicationContext` abstraction. Any use of
`AnnotationConfigWebApplicationContext` is also removed as it also
inherits from the `AbstractRefreshableApplicationContext` outdated
hierarchy.

A new `AnnotationConfigServletWebApplicationContext` context is
introduced instead, extending from `GenericApplicationContext` and
providing the counter part of the reactive context for the Servlet-based
web app tests.

See gh-16096
6 years ago
Madhura Bhave 7587af343d Merge pull request #16342 Pascal Zwick
* pr/16342:
  Polish "Simplify the configuration of the ProtocolHandler"
  Simplify the configuration of the ProtocolHandler
6 years ago
Madhura Bhave ad767ca4e1 Polish "Simplify the configuration of the ProtocolHandler"
Closes gh-16342
6 years ago
Pascal Zwick 2eaa64f82e Simplify the configuration of the ProtocolHandler
This commit introduces a new callback interface that can
be used to customize the ProtocolHandler on a Tomcat Connector.

See gh-16342
6 years ago
Stephane Nicoll bb4e559724 Let Hibernate detect the dialect to use
Closes gh-16172
6 years ago
Stephane Nicoll 5f6d8e1ead Polish 6 years ago
Phillip Webb 8aec4de399 Merge branch '2.1.x' 6 years ago
Phillip Webb 617f97f788 Fix checkstyle violation 6 years ago
Phillip Webb ddbfb2530d Update copyright header of changed files 6 years ago
Phillip Webb ad7eebee9e Merge branch '2.1.x' 6 years ago
Phillip Webb f12ab1ff90 Update copyright header of changed files 6 years ago
Phillip Webb 34fee1adfa Polish 6 years ago
Brian Clozel f221061d81 Avoid bean method proxying in WebMVC and WebFlux config
This commit applies changes similar to what's been done in gh-9068, for
MVC and WebFlux configurations. This is now possible thanks to the
changes done in Spring Framework in
https://github.com/spring-projects/spring-framework/pull/22596

Fixes gh-16427
6 years ago
Stephane Nicoll edb5937571 Merge branch '2.1.x' 6 years ago
Johnny Lim 9fae1e5d0e Check for Reactor Netty disconnected client errors
Closes gh-16046
6 years ago
dreis2211 03a5bb7857 Avoid using deprecated @SolrDocument#solrCoreName
Closes gh-16419
6 years ago
Phillip Webb 2376f973f4 Merge branch '2.1.x' 6 years ago
Phillip Webb 47c6bf741d Merge branch '2.0.x' into 2.1.x 6 years ago
Phillip Webb 07c000c5b7 Merge branch '1.5.x' into 2.0.x 6 years ago
Andy Wilkinson 9e7d922555 Allow processor cache to be configured to be unlimited
Closes gh-16415
6 years ago
Andy Wilkinson ea80ca2ffc Do not assume HTTP protocol when customizing processor cache
Closes gh-16413
6 years ago
Andy Wilkinson 8ebe5f9983 Merge branch '2.1.x' 6 years ago
Andy Wilkinson f20d9a62ae Polish "Ensure that MongoClient's EventLoopGroup is shut down during context close"
See gh-16087
6 years ago
Dmytro Nosan ee7bed1849 Ensure that MongoClient's EventLoopGroup is shut down during context close
See gh-16087
6 years ago
Madhura Bhave 8daa8c48fb Merge branch '2.1.x' 6 years ago
Madhura Bhave 768aa5dfcc Ignore exception if ValidationAdapter can't get a MessageInterpolator
Fixes gh-16177
6 years ago
Stephane Nicoll 076e327481 Polish "Complete support for customizing Tomcat's access log"
Closes gh-16039
6 years ago
Andrew McGhie f823ae488d Complete support for customizing Tomcat's access log
See gh-16039
6 years ago
Stephane Nicoll 241171fcfa Merge branch '2.1.x' 6 years ago
liucheng.zhang 4d1717f18e Disable nulls serialization when serialize-nulls property is false
Closes gh-16332
6 years ago
Stephane Nicoll 465053c11e Merge branch '2.1.x' 6 years ago
Stephane Nicoll 6c3d64a2eb Test Thymeleaf auto-configuration backs off without spring integration
See gh-16341
6 years ago
Stephane Nicoll 29b1b38cc6 Migrate Thymeleaf tests to application runner 6 years ago
Johnny Lim 40d0d6b113 Polish
Closes gh-16299
6 years ago
Stephane Nicoll 89f93b28d7 Merge branch '2.1.x' 6 years ago
Krzysztof Koziol 17c0214cc6 Add missing class condition on thymeleaf-spring5
This commit adds an extra check for the presence of thymeleaf-spring5
library on the classpath. ThymeleafAutoConfiguration is now only
considered if both thymeleaf-spring5 and thymeleaf jars are present.

Closes gh-16341
6 years ago
Andy Wilkinson 24593f39f8 Polish "Use HTTPS for external links wherever possible"
See gh-16276
6 years ago
Spring Operator fb242c27d2 Use HTTPS for external links wherever possible
See gh-16276
6 years ago
Andy Wilkinson 878a635bfb Merge branch '2.1.x' 6 years ago
Andy Wilkinson 5a3474c7a8 Polish "Use HTTPS for external links wherever possible"
See gh-16320
6 years ago
Spring Operator 9fc3ac7d49 Use HTTPS for external links wherever possible
See gh-16320
6 years ago
Andy Wilkinson 864942ad4f Merge branch '2.0.x' into 2.1.x 6 years ago
Andy Wilkinson 14b21026bf Polish "Use HTTPS for external links wherever possible"
See gh-16319
6 years ago
Spring Operator 1a4c6f2dac Use HTTPS for external links wherever possible
See gh-16319
6 years ago
Andy Wilkinson ba4671f0ab Merge branch '1.5.x' into 2.0.x 6 years ago
Stephane Nicoll 3e3353e0e9 Merge branch '2.1.x' 6 years ago
Stephane Nicoll e57c0c0657 Do not attempt to add Jaxb customization if Jaxb is not present
See gh-16268
6 years ago
Stephane Nicoll bece962711 Merge branch '2.1.x' 6 years ago
Stephane Nicoll c2f9e7dd43 Fix StreamsBuilderFactoryBean injection definition
Closes gh-16329
6 years ago
Johnny Lim 038e213343 Restore setExtractBareNamePropertyMethods() for AssertJ
Closes gh-16325
6 years ago
Andy Wilkinson 4900505425 Merge branch '2.0.x' into 2.1.x 6 years ago
Spring Operator a5dba01cb9 Use HTTPS for external links from XML files where possible
See gh-16314
6 years ago
Andy Wilkinson fedb40a2bf Merge branch '1.5.x' into 2.0.x 6 years ago
Stephane Nicoll 197e1669e2 Polish 6 years ago
Madhura Bhave 8f693a0277 Add support for configuration properties scanning
See gh-12602
6 years ago
Brian Clozel 711169aa8a Adapt tests after Servlet.fn added to Spring Framework
Since Servlet.fn support has been added in Spring Framework, new
infrastructure beans (like `HandlerAdapter` and `HandlerMapping`) have
been added.

This commit adapts the Spring MVC auto-configuration tests to reflect
those changes.
6 years ago
Andy Wilkinson 36c1c051b8 Merge branch '2.1.x' 6 years ago
Andy Wilkinson e23f72c8b0 Merge branch '2.0.x' into 2.1.x 6 years ago
Andy Wilkinson 9fbd38ab3c Merge branch '1.5.x' into 2.0.x 6 years ago
Spring Operator 00ab30362c Use HTTPS for external links in XML files
See gh-16270
6 years ago
dreis2211 dda0b3e2a1 Remove explicit types
Closes gh-16265
6 years ago
Andy Wilkinson b828b398b5 Merge branch '2.1.x' 6 years ago
Andy Wilkinson a36aa67b52 Merge branch '2.0.x' into 2.1.x 6 years ago
Spring Operator 3e2b6ac8ed Update build and setup configuration to use HTTPS
See gh-16246
6 years ago
Mohamed Rifni e3269a7e9b Switch FaviconRequestHandler visibility to package private
Closes gh-16250
6 years ago
Stephane Nicoll fcdc414646 Remove use of `@Autowired` for configuration properties bean
See gh-8762
6 years ago
Stephane Nicoll 4d73211c3a Polish "Check for multiple processors in OnClassCondition"
Closes gh-16115
6 years ago
Jan Thewes a96a79ea45 Check for multiple processors in OnClassCondition
See gh-16115
6 years ago
Stephane Nicoll b2290107db Polish "Trim trailing whitespace from spring.server.servlet.context-path"
Closes gh-16165
6 years ago
Mohamed Rifni bde2f850b2 Trim trailing whitespace from spring.server.servlet.context-path
See gh-16165
6 years ago
Andy Wilkinson 68bfb020aa Reduce need for bean method proxying and disable where not needed
Closes gh-9068
6 years ago
Andy Wilkinson 4b98fa7d94 Alias proxyBeanMethods on annotations meta-annotated with @Configuration
Closes gh-16201
6 years ago
Phillip Webb 64a2e8d67f Update copyright year for changed files 6 years ago
Phillip Webb dd3e8154d9 Merge branch '2.1.x' 6 years ago
Phillip Webb fc3aa43cc2 Update copyright year for changed files 6 years ago
Andy Wilkinson aa2008bc5a Merge branch '2.1.x' 6 years ago
Andy Wilkinson 8c3cec8f13 Merge branch '2.0.x' into 2.1.x 6 years ago
Andy Wilkinson 361437f4e2 Merge branch '1.5.x' into 2.0.x 6 years ago
Stephane Nicoll 430571b37b Perform binding at creation time if possible
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>
6 years ago
Andy Wilkinson b8dff5fe17 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 36cbd00853 Disable AssertJ's bare-named property accessor discovery
AssertJ includes a change in 3.12 that means that, by default, it now incorrectly
identifies some of the builder methods on CacheControl as accessor methods for its fields.
This commit restores the behaviour of 3.11 so that a method is only considered to be a
property accessor if a matches the Java bean naming conventions.

Closes gh-16145
6 years ago
Andy Wilkinson 0959698c32 Upgrade to Jersey 2.28
Closes gh-16114
6 years ago
Andy Wilkinson d6a869fa98 Switch to Jakarta EE API dependencies where possible
Closes gh-16113
Closes gh-16112
Closes gh-16111
Closes gh-15916
Closes gh-15689
6 years ago
Brian Clozel ce9626d00f Disable JMX by default
This commit switches the default value for the `spring.jmx.enabled`
configuration property.
JMX is now disabled by default and can be enabled with
`spring.jmx.enabled=true`.

Closes gh-16090
6 years ago
Johnny Lim f4786d7d2e Polish
Closes gh-16083
6 years ago
Dmytro Nosan c0a458e9d0 Remove unused constructor argument
Closes gh-16059
6 years ago
Stephane Nicoll d5448eb124 Polish "Add failure analyzer for Flyway's bootstrap failure"
Closes gh-16015
6 years ago
anand 96315372ef Add failure analyzer for Flyway's bootstrap failure
See gh-16015
6 years ago
Stephane Nicoll 2ad234b605 Adapt to breaking change in Spring Hateoas 6 years ago
Stephane Nicoll 554bff6145 Merge branch '2.1.x' 6 years ago
Stephane Nicoll eebd906c8a Polish contribution
Closes gh-16047
6 years ago
Dan Zheng 2c4afb3bd8 Fix NamedParameterJdbcTemplate precedence with database migration tools
See gh-16047
6 years ago
Stephane Nicoll 715db153e3 Polish "Remove code deprecated in 2.1"
Closes gh-16013
6 years ago
Mehmed Baždar 246111cd84 Remove code deprecated in 2.1
See gh-16013
6 years ago
Andy Wilkinson f2e3e274a8 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 53326695ea Polish 6 years ago
Andy Wilkinson de0c065625 Inject single-use configuration dependencies into bean methods
Closes gh-15751
6 years ago
Johnny Lim 55f5f2f910 Polish
Closes gh-15987
6 years ago
Stephane Nicoll ddfdc48161 Merge branch '2.1.x' 6 years ago
Stephane Nicoll 42c246cacb Polish contribution
Closes gh-15984
6 years ago
isank e546ed4834 Order TaskExecution auto-config before TaskScheduling auto-config
See gh-15984
6 years ago
Stephane Nicoll fa49dfcaaf Add support for task scheduling shutdown related properties
See gh-15951
6 years ago
Stephane Nicoll d2cbf08f09 Polish "Add support for task executor shutdown related properties"
Closes gh-15951
6 years ago
Filip Hrisafov 3b47ba21a8 Add support for task executor shutdown related properties
See gh-15951
6 years ago
Andy Wilkinson add8c6f295 Align HypermediaAutoConfigurationTests with latest HATEOAS API changes
See gh-15939
6 years ago
Stephane Nicoll 71df2f311b Polish "Expose Tomcat AccessLog Max days property"
Closes gh-15954
6 years ago
Dmytro Nosan 596f0c28c0 Expose Tomcat AccessLog Max days property
See gh-15954
6 years ago
Stephane Nicoll 8939a7eec3 Merge branch '2.1.x' 6 years ago
Stephane Nicoll f3e142cb7c Polish "Stop using imports from shaded dependencies"
Closes gh-15950
6 years ago
Michael Simons de7812aa3a Stop using imports from shaded dependencies
See gh-15950
6 years ago
Andy Wilkinson 747e419db1 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 9fb0b97f96 Decorate test containers so tests are skipped without Docker
Closes gh-15901
Closes gh-15638
6 years ago
Stephane Nicoll 3d6def9f81 Handle BatchMessagingMessageConverter with Kafka batch listeners
Closes gh-15942
6 years ago
Andy Wilkinson 18174a8e9e Polish "Add opt-in support for Neo4j-OGM native types"
See gh-15637
6 years ago
Michael Simons af21b847a0 Add opt-in support for Neo4j-OGM native types
This includes tests for the autoconfiguration using that new property.
The test require the native types for Bolt and embedded in the test
scope, so the Neo4j-OGM native types have been added to managed
dependencies.

The enhanced autoconfiguration throws an
InvalidConfigurationPropertyValueException when native types cannot be
used due to missing dependencies or wrong transport mode.

See gh-15637
6 years ago
Andy Wilkinson e924745bf8 Start building against Spring Data Moore M2 snapshots
See gh-15197
6 years ago
Andy Wilkinson c41924f7d4 Merge branch '2.1.x' 6 years ago
Andy Wilkinson ab8fcf0d71 Polish "Use class for @ConditionalOnClass"
See gh-15775
6 years ago
Johnny Lim b423962c89 Use class for @ConditionalOnClass
See gh-15775
6 years ago
Andy Wilkinson 48e781181e Merge branch '2.1.x' 6 years ago
Andy Wilkinson 799ac24da1 Reinstate auto-config of RequestContextFilter with Jersey
Previously, the auto-configuration for both Jersey and WebMvc would auto-configure
a RequestContextFilter bean. In 2.1.0, this led to a startup failure due to the latter
attempting to override the bean defined by the former. In addition to the override there
were also problems with the order of the filter as Jersey uses -1 and MVC uses -105.

To avoid the above-described problems, the auto-configuration of the RequestContextFilter
was removed from JerseyAutoConfiguration in 2.1.1. Unfortunately, the broke
request-scoped beans for those using only Jersey.

This commit attempts to strike a better balance by reintroducing the auto-configuration
of RequestContextFilter in JerseyAutoConfiguration. It will back off if the user defines
their own filter or filter registration. WebMvcAutoConfiguration has been updated to
back off in the same manner. This leaves the potential for ordering problems, but they
are no worse than they were before. Furthermore, the user has the means to correct any
problems by using the various filter ordering properties that are provided for Jersey,
Spring Session, Spring Security, etc.

Closes gh-15376
6 years ago
Andy Wilkinson db31e42751 Merge branch '2.1.x' 6 years ago
Andy Wilkinson a975c0ad16 Use Testcontainers’ CassandraContainer rather than our own
Closes gh-15901
6 years ago
Andy Wilkinson 6fe226d781 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 20f26c4d30 Polish "Fix stopping of Embedded Mongo before context is closed"
See gh-15692
6 years ago
Eugene 750246f021 Fix stopping of Embedded Mongo before context is closed
See gh-15692
6 years ago
Andy Wilkinson b5c9afc055 Merge branch '2.1.x' 6 years ago
Andy Wilkinson 295a660e35 Polish "Set NO_REQUEST_TIMEOUT as a server option not a socket option"
See gh-15822
6 years ago
ayudovin dbce3731a4 Set NO_REQUEST_TIMEOUT as a server option not a socket option
See gh-15822
6 years ago
Andy Wilkinson c6a1df6cd4 Merge branch '2.1.x' 6 years ago
Jeffrey van der Laan 4f86233ca7 Do not auto-configure OEMIV filter when user defines registration bean
See gh-15889
6 years ago
Kedar Joshi 4a253ff87c Polish
1. Removed unnecessary null checks
2. Combined collection initialization and modification
3. Minor collections related optimizations

Closes gh-15837
6 years ago
Madhura Bhave 4d69e127c8 Merge branch '2.1.x' 6 years ago
Madhura Bhave 26da45aa9a Configure a JerseyApplicationPath bean for the actuators
This commit also ensures that Jersey-based actuator endpoints are
available before the user has configured a `ResourceConfig` bean

Fixes gh-15625
Fixes gh-15877
6 years ago
Brian Clozel e8fef97335 Merge branch '2.1.x' 6 years ago
Brian Clozel cba6079b7b Log unhandled server exceptions in WebFlux
Prior to this commit, errors unhandled by custom `WebExceptionHandler`
and resulting in an HTTP 500 status would not be logged at ERROR level,
giving no information to developers about the actual exception.

This commit ensures that such exceptions are logged at the ERROR level
with their exception. By the time the exception hits the
`DefaultErrorWebExceptionHandler`, if the response is already committed
or if the exception is due to a client disconnecting, the error is
delegated to Framework support as Spring Boot won't be able to render an
error page as expected.

Fixes gh-15769
6 years ago
Andy Wilkinson 45cc649c7d Merge branch '2.1.x' 6 years ago
Andy Wilkinson 82bc87560c Use AssertJ’s exception assertions rather than fail
Closes gh-15761
6 years ago