Commit Graph

2826 Commits (9f9079c3e4f0aec5cfe86ddab033a1e1a722d091)

Author SHA1 Message Date
Andy Wilkinson 0061554105 Merge branch '1.5.x' 8 years ago
Andy Wilkinson e5906a6b64 Allow HttpMsgConverter to depend on ConvService without creating a cycle
In an MVC web application, DelegatingWebMvcConfiguration provides the
ConversionService while also consuming WebMvcConfigurerAdapters that,
among other things, can configure HTTP message converters. Boot's
WebMvcConfigurerAdapter, WebMvcAutoConfigurationAdapter, consumes
the HttpMessageConverters bean and uses it to configure Spring MVC's
HTTP message converters. This can create a bean dependency cycle if
an HTTP message converter bean depends, directly or indirectly on
the ConversionService. An example of the cycle is:

┌─────┐
|  jsonComponentConversionServiceCycle.ThingDeserializer defined in …
↑     ↓
|  org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration$EnableWebMvcConfiguration
↑     ↓
|  org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration$WebMvcAutoConfigurationAdapter
↑     ↓
|  org.springframework.boot.autoconfigure.web.HttpMessageConvertersAutoConfiguration
↑     ↓
|  mappingJackson2HttpMessageConverter defined in class path resource [org/springframework/boot/autoconfigure/web/JacksonHttpMessageConvertersConfiguration$MappingJackson2HttpMessageConverterConfiguration.class]
↑     ↓
|  jacksonObjectMapper defined in class path resource [org/springframework/boot/autoconfigure/jackson/JacksonAutoConfiguration$JacksonObjectMapperConfiguration.class]
└─────┘

This commit breaks the cycle by making WebMvcAutoConfigurationAdapter
consume HttpMessageConverters lazily. This allows the adapter to be
created without triggered instantiation of every HTTP message
converter bean and all their dependencies. This allows it to be
injected into DelegatingWebMvcConfiguration without triggering an
attempt to retrieve the ConversionService.

Closes gh-9409
8 years ago
Andy Wilkinson 6b7dfce5c6 Formatting 8 years ago
Andy Wilkinson a03ddd331c Polishing 8 years ago
Andy Wilkinson d0c8f80117 Merge branch '1.5.x' 8 years ago
Andy Wilkinson ad629055fa Ensure that custom static resource locations end with /
Closes gh-9360
8 years ago
Stephane Nicoll 7f420d1268 Polish contribution
Closes gh-9411
8 years ago
Vedran Pavic db060c847d Ensure `QuartzDatabaseInitializer` is initialized before `Scheduler`
If the auto-configured `Scheduler` instance backed by JDBC job store is
used as a dependency in an application component, the initialization of
`Scheduler` will be triggered before `QuartzDatabaseInitializer`. This
will result in failure due to schema not being prepared in time for
`Scheduler` to populate job details.

This commit ensures `QuartzDatabaseInitializer` is initialized before the
auto-configured `Scheduler` by introducing a dependency between the two.

See gh-9411
8 years ago
Stephane Nicoll 540dca7bdd Revisit InfluxDB configuration structure
This commit removes the `client` namespace for InfluxDB as the
component that is created is `InfluxDB`, not `InfluxDBClient` or
something.

This aligns with all the other url/user/password properties Spring
Boot provides already

See gh-9066
8 years ago
Phillip Webb 2c7dd9f519 Polish 8 years ago
Phillip Webb 8f7004738b Merge branch '1.5.x' 8 years ago
Phillip Webb b9fd99e268 Polish 8 years ago
Stephane Nicoll 9624bf14c4 Merge branch '1.5.x' 8 years ago
Stephane Nicoll f11edd1eb3 Add missing `@Configuration` on `EmbeddedDatabaseConfiguration` 8 years ago
Andy Wilkinson 8353843006 Merge branch '1.5.x' 8 years ago
Andy Wilkinson a347383111 Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson bf656c70ad Improve MultipartProperties' javadoc
Closes gh-9073
8 years ago
Stephane Nicoll 5e5b7e20ff Merge branch '1.5.x' 8 years ago
Stephane Nicoll c736a1698b Clarify default value of `ConditionalOnMissingBean` on bean methods
Closes gh-9387
8 years ago
Stephane Nicoll 297127e075 Polish "Add influxDB java client auto-configuration"
Closes gh-9066
8 years ago
Sergey Kuptsov 6a70b90128 Add influxDB java client auto-configuration
See gh-9066
8 years ago
Stephane Nicoll ba1bc45a53 Polish "Add PoolingOptions to CasandraProperties"
Closes gh-7946
8 years ago
Vladimir Tsanev 2aafc7daa9 Add PoolingOptions to CasandraProperties
This change allows users to configure some basic pooling
options for cassandra driver via configuration properties.

See gh-7946
8 years ago
Stephane Nicoll 5ea3ab4595 Polish "Allow to customize the JdbcTemplate"
Closes gh-7960
8 years ago
Kazuki Shimizu fa357f0e27 Allow to customize the JdbcTemplate
See gh-7960
8 years ago
Stephane Nicoll ad85902880 Reuse JdbcTemplate in NamedParameterJdbcTemplate
This commit makes sure to reuse an existing or auto-configured
`JdbcTemplate` when auto-configuring a `NamedParameterJdbcTemplate`.

This ensures that whatever customizations have been applied on the
`JdbcTemplate` are properly shared.

Closes gh-4945
8 years ago
Phillip Webb 42762a66b8 Upgrade to Elasticsearch 5.4.0
Upgrade to Elasticsearch 5.4.0 and fix auto-configuration to account for
API changes.

See gh-9374
8 years ago
Stephane Nicoll 6f25131a1d Polish 8 years ago
Andy Wilkinson 5ef29653c7 Polish 8 years ago
Andy Wilkinson a9cecc860c Apply TestPropertyValues to the context under test
Closes gh-9367
8 years ago
Stephane Nicoll eaa34874e8 Polish "Allow customization of MongoClientSettings.Builder"
Closes gh-9341
8 years ago
Mark Paluch eeb961075f Allow customization of MongoClientSettings.Builder
MongoClientSettingsBuilderCustomizer allows customization of the
auto-configured `MongoClientSettings.Builder`.

See gh-9341
8 years ago
Stephane Nicoll 026682d7e3 Polish jOOQ auto-configuration 8 years ago
Stephane Nicoll efdf451e6e Polish "Auto-detect jOOQ dialect"
Closes gh-9355
8 years ago
Michael J. Simons 1b4c5dffaf Auto-detect jOOQ dialect
See gh-9355
8 years ago
Stephane Nicoll 59a15b259c Polish "Add Quartz Scheduler support"
Closes gh-4299
8 years ago
Vedran Pavic 9e23206c31 Add Quartz Scheduler support
See gh-4299
8 years ago
Vedran Pavic 639641feea Replace `WebMvcRegistrationsAdapter` with default methods
Closes gh-9340
8 years ago
Stephane Nicoll 677d52f494 Polish "Add Spring Data Web configuration properties"
Closes gh-9339
8 years ago
Vedran Pavic e9ac41f83f Add Spring Data Web configuration properties
This commit adds support for configuring Spring Data Web
`PageableHandlerMethodArgumentResolver` and
`SortHandlerMethodArgumentResolver` using configuration properties.

See gh-9339
8 years ago
Stephane Nicoll 7aa84cf395 Fix checkstyle violation 8 years ago
Stephane Nicoll a05dd4a1b3 Polish 8 years ago
Stephane Nicoll b8591206d5 Polish 8 years ago
Stephane Nicoll 062dc3cb9a Upgrade to Neo4J OGM 2.1.3
Closes gh-9335
8 years ago
Stephane Nicoll 337e645263 Upgrade to Atomikos 4.0.4
Closes gh-5591
8 years ago
Johnny Lim 6939ff1e65 Polish
Closes gh-9330
8 years ago
Stephane Nicoll 9332a3a4ae Merge branch '1.5.x' 8 years ago
Stephane Nicoll b5709fd618 Polish
See gh-9330
8 years ago
Madhura Bhave d745b69630 Replace usages of EnvironmentTestUtils 8 years ago
Brian Clozel fed8c8a681 Adapt WebFlux.fn auto-config to SPR-15536
Since SPR-15536, WebFlux.fn is now configured with `@EnableWebFlux`,
along the annotated controllers. Both `RouterFunction` and Controller
instances can now live within the same application and they share
the same web infrastructure.

This commit removes the custom auto-configuration for `RouterFunction`
and relies on `@EnableWebFlux` for that.

Closes gh-9165
8 years ago