Commit Graph

3049 Commits (61c6662b9cac92d9cb2cd662df9162ab07454039)

Author SHA1 Message Date
Phillip Webb f5aeac3658 Polish 8 years ago
Stephane Nicoll 546338ac80 Avoid early initializations for reactive support
This commit flags the `BeanPostProcessor` registered by the reactive
embedded support as `synthetic` so that it doesn't trigger an early
initialization of other components.

See gh-8467
8 years ago
Stephane Nicoll 36d6ab41a2 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 28bba876fa Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll 9fb9a67c4b Avoid early initializations
This commit flags the two `BeanPostProcessors` registered by the
embedded support as `synthetic` so that they don't trigger an early
initialization of other components.

Closes gh-8467
8 years ago
Spring Buildmaster d23fa24340 Next Development Version 8 years ago
Spring Buildmaster 2a83e80a9b Next Development Version 8 years ago
Andy Wilkinson edc2facd7a Merge branch '1.5.x' 8 years ago
Andy Wilkinson 9e9f006720 Polish "Enable customization of RestTemplate that retrieves JwtAccessTokenConverter's key"
See gh-8268
See gh-5859
8 years ago
Eddú Meléndez dc9ff73805 Enable customization of RestTemplate that retrieves JwtAccessTokenConverter's key
Closes gh-8268
See gh-5859
8 years ago
Stephane Nicoll 2e1cda8743 Merge branch '1.5.x' 8 years ago
Stephane Nicoll d74af04724 Rename JSR 303 Validator bean name
Closes gh-8481
8 years ago
Stephane Nicoll 28a8e3db2f Remove spring.cache.hazelcast.config
Remove the creation of a separate `HazelcastInstance` specific to caching.
Instead, the general `HazelcastAutoConfiguration` is used and if a
`HazelcastInstance` bean is present we wrap it in a `CacheManager`.

Closes gh-8470
8 years ago
Stephane Nicoll d811b5fb1d Merge branch '1.5.x' 8 years ago
Stephane Nicoll bb8800a625 Deprecate spring.cache.hazelcast.config
The additional configuration for an `HazelcastInstance` will be removed
in 2.0. This commit makes sure that the property is deprecated in 1.5

See gh-8470
8 years ago
Vedran Pavic 1c789f1a8d Remove dependency management for `hibernate-entitymanager`
Closes gh-8433
8 years ago
Andy Wilkinson 5285a8db44 Merge branch '1.5.x' 8 years ago
Madhura Bhave 605b0aefc6 Simplify validation logic in ResourceServerProperties
Closes gh-8306
Closes gh-8317
8 years ago
Stephane Nicoll cb40ea485b Merge branch '1.5.x' 8 years ago
Stephane Nicoll 3e0e4e81b9 Polish 8 years ago
Stephane Nicoll 5cc569fc91 Improve execution speed of `CacheAutoConfigurationTests`
As of Hazelcast 3.7, the bootstrap is pretty slow by default due to the
networking discovery. This commit disables both TCP/IP and multicast
discoveries.
8 years ago
Stephane Nicoll 5278baca01 Polish 8 years ago
Stephane Nicoll ea18fe58e4 Remove useless checked exception throw clause 8 years ago
Stephane Nicoll ad9d912009 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 0d61f92479 Ignore URI when local.mongo.port is set
This commit makes sure that if `local.mongo.port` is set, a `MongoClient`
on the embedded MongoDB instance is created. When an embedded instance
is detected, only the `host` property is used and the `uri` is ignored if
set.

This makes sure that the auto-configured `MongoClient` automatically
switches to the embedded server, even if a production uri has been
specified.

Closes gh-8219
8 years ago
Phillip Webb 58ac67eb27 Merge branch '1.5.x' 8 years ago
Phillip Webb 3ee7dae09b Merge branch '1.4.x' into 1.5.x 8 years ago
Phillip Webb f1012c104a Polish 8 years ago
Phillip Webb 987b6c956e Polish 8 years ago
Phillip Webb 57111aba22 Get published DataSource from EntityManager
Update DataSourceInitializedPublisher to always attempt to obtain the
published DataSource directly from the EntityManager. In the case where
the EntityManager doesn't provide a DataSource, the previous logic is
used.

Fixes gh-8296
8 years ago
Andy Wilkinson 205faa1950 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 70472b36f1 Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 59d3a79c82 Avoid eager initialization when finding beans by annotation
Closes gh-8269
8 years ago
Andy Wilkinson 373474f8f6 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 4390c81115 Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 8a326a8713 Simplify BeanTypeRegistry by requiring a DefaultListableBeanFactory
Closes gh-8439
8 years ago
Stephane Nicoll cf64d9fd35 Reuse auto-configured `Validator` in WebFlux
This commit makes sure that if a `Validator` is auto-configured, it is
reused as the `webFluxValidator`. This is pretty much the same thing as
what was done recently for Spring MVC.

Since the infrastructure is now shared, the package protected class has
been published in the `.validation` package.

Closes gh-8400
8 years ago
Stephane Nicoll deaa6089b0 Move `HttpHandler` configuration to a dedicated auto-configuration
An `HttpHandler` bean must be provided once the infrastructure triggered
by `@EnableWebFlux` has been processed. Rather than creating a
`HttpHandler` in that auto-configuration, this commit moves it to a
dedicated auto-config, like we do for `DispatcherServlet` for
servlet-based webapps.

As this is the only bean we auto-configure in a functional fashion, the
`WebFluxFunctionalAutoConfiguration` is now merged with this new
auto-configuration, making its purposes clearer.

Cloess gh-8436
8 years ago
Phillip Webb a4bcd20b64 Merge branch '1.5.x' 8 years ago
Phillip Webb ca1540cefe Update header copyright for changed files 8 years ago
Phillip Webb 77f6ed8357 Further rework Spring MVC JSR-303 validation
Rework Spring MVC JSR-303 validation support a little more to move
most of the creation logic to the wrapper class. Also rename
`SpringValidatorAdapterWrapper` -> `WebMvcValidator`.

See gh-8223
8 years ago
Phillip Webb 7ed1a26c2d Fix test failures when running in Eclipse
Update MultipartAutoConfigurationTests to reset the Tomcat URL factory.
8 years ago
Phillip Webb 5867cd6175 Polish 8 years ago
Phillip Webb 47b00c086c Polish 8 years ago
Stephane Nicoll d1d70b0207 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 0435f122d4 Rework JSR-303 validation exposure with Spring MVC
This commit improves the initial solution by actually overriding the
`mvcValidator` `@Bean`. This gives us more control as whether a custom
validator has been specified or not. We now wrap it regardless of it
being custom or provided by auto-configuration.

Closes gh-8223
8 years ago
Stephane Nicoll c333ccfe20 Merge branch '1.5.x' 8 years ago
Stephane Nicoll d8f62c46ad Prevent warning due to BPP dependency
`MethodValidationPostProcessor` requires a `Validator` so we need to flag
it as an infrastructure bean to prevent an additional log that indicates
it won't be post-processed.

We obviously don't want to post-process the `Validator` here so adding the
additional meta-data is a good idea anyway.

Closes gh-8422
8 years ago
Stephane Nicoll c5595f296c Add support for Mock test with WebFlux
This commit add mock support for WebFlux with an infrastructure similar
to what `WebMvcTest` provides. `@WebFluxTest` can be used to test
controllers with a narrowed classpath that is relevant to WebFlux. Also,
`@SpringBootTest` now starts WebFlux in "mock" mode by default and
`@AutoConfigureWebTestClient` can be used to inject a `WebTestClient`
connected to the `ApplicationContext`.

To make that happen, a `ReactiveWebApplicationContext` interface has been
introduced to mirror what `WebApplicationContext` currently does. Things
are still a bit volatile at this point and that infra may move to Spring
Framework at some point.

Closes gh-8401
8 years ago
Brian Clozel 3a8be10be8 Enable Tomcat, Jetty and Undertow reactive auto-conf
Closes gh-8403
8 years ago
Stephane Nicoll f1d4d8434b Hide javax.servlet.SessionTrackingMode
The server's session can now be configured in both a servlet and a
reactive environment. The latter has not requirement on the servlet API
and this commit removes the requirement to the `SessionTrackingMode`
enum.

Closes gh-8402
8 years ago
Brian Clozel 8317977e1b Add WebFlux auto-configuration
This commit creates auto-configuration classes for both the
annotation and functional variants of the WebFlux framework.

They provide the basic support to get started with those, by
creating the required `HttpHandler` using the provided application
context (for annotation) or `RouterFunction`s (for functional).

They do support `WebFilter` registration and a few advanced
features such as resource handling, `messageReaders|Writers`
and `ViewResolver` auto-registration.

Closes gh-8386
8 years ago
Brian Clozel 656b509f03 Add support for reactive web servers auto-configuration
This commit adds the auto-configuration for creating reactive
`EmbeddedWebServer` instances. This adds support for the
following servers: Reactor Netty, Tomcat, Jetty and Undertow.

Fixes gh-8302
Fixes gh-8117
8 years ago
Brian Clozel 0b162e894b Manage EmbeddedWebServer in ReactiveWebApplicationContext
This commit adds an `EmbeddedWebServer` instance to the
`ReactiveWebApplicationContext` and ties it to the application
lifecycle.

To launch a reactive web application, two elements are required
from the context:

* a `ReactiveWebServerFactory` to create a server instance
* a `HttpHandler` instance to handle HTTP requests

Closes gh-8337
8 years ago
Brian Clozel f331ac133f Add reactive web server infrastructure
This commit adds the infrastructure for creating and customizing
reactive embedded web servers. Common configuration has been refactored
into the new `ConfigurableEmbeddedWebServer` interface.

See gh-8302
8 years ago
Stephane Nicoll a38d2456c3 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 4aa99b9531 Avoid exposing several javax.validaton.Validator beans
This commit makes sure that the Spring `Validator` used by the MVC
layer doesn't expose a JSR-303 contract, if any.

The default implementation of the `mvcValidator` is
`LocalValidatorFactoryBean`. While this object is exposed as a Spring
`Validator` only, its runtime capabilities expose that contract as well
as the standard `Validator` and `ValidatorFactory` ones.

Concretely, if an auto-configuration is checking if a
`javax.validation.Validator` bean is missing, the condition will match
since we only know about "advertized types": beans haven't been created
yet so we can't inspect their runtime capabilities. Since the condition
match, we will auto-configure a bean. At runtime though, we're no longer
ale to inject a `javax.validation.Validator` by type since two candidates
are available.

This commit introduces `SpringValidatorAdapterWrapper`, a wrapper class
on any `SpringValidatorAdapter` (`LocalValidatorFactoryBean` being one of
the available implementations) that only exposes the Spring contract.

Also, if a `javax.validation.Validator` bean is available, we will use it
for the MVC layer, rather than creating a new one.

Closes gh-8223
8 years ago
Andy Wilkinson 4ff159adbe Merge branch '1.5.x' 8 years ago
Andy Wilkinson b034a505a5 Polish 0f42c5dd
- Apply standard code formatting
- Add class javadoc to MultipleResourceServerConfigurationTests
- Add missing @Override annotations
- Remove unused ExpectedException field
- Remove use of SpringApplicationBuilder from the tests
- Use @ImportAutoConfiguration to import auto-configuration
- Add assertions to verify that the orders haven't been changed
- Remove unnecessary mocking of EmbeddedServletContainerFactory

See gh-8347
8 years ago
Dave Syer c544aff72f Merge remote-tracking branch 'origin/1.5.x' 8 years ago
Dave Syer 0f42c5dd94 Check there is only one ResourceServerConfiguration before modifying
Fixes gh-8347
8 years ago
Madhura Bhave b8a38d60b7 Merge branch '1.5.x' 8 years ago
Madhura Bhave 67810abd9e Match ResourceServerCondition if JWK config present
Closes gh-8350
8 years ago
Stephane Nicoll 91009cfc01 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 43a534f4ca Polish contribution
Closes gh-8195
8 years ago
Mathieu Ouellet fa8f0a6136 Add schema validation options for embedded LDAP
See gh-8195
8 years ago
Stephane Nicoll 4304cdb91a Merge branch '1.5.x' 8 years ago
Stephane Nicoll f57ddff478 Remove dead code
Closes gh-8305
8 years ago
Madhura Bhave b4134e239e Add autoconfiguration for JWKTokenStore
If `jwk.key-set-uri` is present.

Closes gh-4437
8 years ago
Andy Wilkinson 04a87ee4c1 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 01729cc1d2 Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 9e1238e286 Consider resource loader path when checking Groovy template availability
Closes gh-8304
8 years ago
Andy Wilkinson 57fe8b966e Use Spring Session's defaults for its filter's dispatcher types
Closes gh-8288
8 years ago
Andy Wilkinson fe6320db42 Align Security filter dispatcher types with Spring Security's defaults
Closes gh-8289
8 years ago
Stephane Nicoll ce6372c46f Add support of reactive repositories with `@DataMongoTest`
Closes gh-8280
8 years ago
Stephane Nicoll 50553137d3 Merge branch '1.5.x' 8 years ago
Stephane Nicoll a0ef61a27d Enable proxy target class for `MethodValidationPostProcessor`
Closes gh-8277
8 years ago
Andy Wilkinson f9015be619 Merge branch '1.5.x' 8 years ago
Andy Wilkinson e0b355d313 Avoid ClassNotFoundException caused by areturn verification
The verifier's type checker is required to check that a type returned
from a method (an areturn instruction) is assignable to the method's
declared return type. When the return type is an interface, the JLS
states that it should be treated as java.lang.Object. This means that
no analysis of the type being returned is required and verification
passes. When the return type is a class, the type being returned must
be analyzed to ensure that it is compatible. This analysis causes the
return type to be loaded during verification.

Prior to this commit, BasicBatchConfigurer's
createAppropriateTransactionManager method had a return type of
AbstractPlatformTransactionManager and a branch that could return
a JpaTransactionManager. This caused the verifier to attempt to load
JpaTransactionManager so that it could check that it was assignable
to AbstractPlatformTransactionManager. This would fail when
spring-orm is not on the classpath as JpaTransactionManager could not
be loaded.

This commit updates BasicBatchConfigurer to change the return type
of createAppropriateTransactionManager so that it returns a
PlatformTransactionManager which is an interface. As described above,
this relaxes the verification of any areturn instructions in the
method and, in this particular case stops the verifier from trying to
load JpaTransactionManager.

Closes gh-8181
8 years ago
Stephane Nicoll b30d4303d5 Polish contribution
Closes gh-8230
8 years ago
Mark Paluch 48b0f1577b Provide a starter for reactive Spring Data MongoDB
Add autoconfiguration to bootstrap MongoDB Reactive Streams driver
components, reactive Spring Data MongoDB and reactive repositories. Add
bean dependency processor for flapdoodle so embedded MongoDB instances
are configured before bootstraping the reactive MongoDB client.

Add Spring Data MongoDB Reactive starter with blocking and non-blocking
dependencies. MongoDB requires a separate driver that is used in the
`ReactiveMongoTemplate` while `MappingMongoConverter` (shared amongst
blocking/reactive Template API) requires the blocking driver to resolve
DBRefs.

See gh-8230
8 years ago
Andy Wilkinson 16b7bf7f73 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 601c6aa305 Tidy up code formatting and address some compiler warnings 8 years ago
Andy Wilkinson df08863641 Make ServletRegistrationBean and FilterRegistration bean generic
Closes gh-7666
8 years ago
Stephane Nicoll 064faf9560 Merge branch '1.5.x' 8 years ago
Stephane Nicoll aa49468171 Allow to define a custom MessageRecoverer
This commit improves `SimpleRabbitListenerContainerFactoryConfigurer` to
use a custom `MessageConverter`. If such a bean is present, it is used
for the default factory that is auto-configured.

Closes gh-8194
8 years ago
Stephane Nicoll cea64f6a32 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 8a59e88a9d Fix MongoDB CustomConversions bean name
This commit qualifies the `CustomConversions` bean name that the Mongo
auto-configuration might create. `CustomConversions` is a common pattern
in Spring Data and other stores are using the same name.

See https://jira.spring.io/browse/DATASOLR-362

Closes gh-8225
8 years ago
Brian Clozel aeef41c977 Separate container customization from ServerProperties
This commit creates a separate
`ServerPropertiesServletContainerCustomizer` that holds the servlet
container customization code, separating that concern from the server
configuration keys.

See gh-8066
8 years ago
Stephane Nicoll 8899b93de0 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 45a91fca31 Fix parsing of spring.autoconfigure.exclude property
This commits makes sure that `AutoConfigureImportSelector` properly
parses comma separated lists that contain additional spaces.

Closes gh-8220
8 years ago
Andy Wilkinson e891fe0584 Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 06017f688a Only auto-configure SpringSocialDialect for Thymeleaf 2
Previously, SocialWebAutoConfiguration would create a
SpringSocialDialect bean when SpringTemplateEngine was on the
classpath. This class exists in both Thymeleaf 2 and Thymeleaf 3 but
SpringSocialDialect is only compatible with Thymeleaf 2.

This commit updates the auto-configuration to require
SpringResourceResourceResolver to be on the classpath. This class
exists in Thymeleaf 2 but does not exist in Thymeleaf 3.

Closes gh-4858
8 years ago
Brian Clozel 12d883f6b9 Introduce "server.servlet" configuration prefix
This commit refactors the `ServerProperties` property keys and
introduces a separate "server.servlet" namespace to isolate
servlet-specific properties from the rest.

Closes gh-8066
8 years ago
Stephane Nicoll a31a792192 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 130e0808d0 Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll 008aef6142 Document @LiquibaseDataSource feature
Closes gh-8214
8 years ago
Stephane Nicoll f41801ee8c Narrow down ConditionalOnWebApplication
Use the new `type` attribute of `@ConditionalOnWebApplication` for the
configurations that have a hard dependency on the Servlet/MVC API.

See gh-8118
8 years ago
Stephane Nicoll 8e6f1218e1 Detect Reactive web applications
This commit improves `@ConditionalOnWebApplication` to specify the
requested web application type. By default, any web application will
match but it can also match only if a recactive (or servlet) web
application is present.

Closes gh-8118
8 years ago
Stephane Nicoll b2ec03cd4e Restore couchbase support
This commit effectively reverts the changes that were applied to
workaround the breakage in spring-data-couchbase.

Closes gh-8200
8 years ago
Stephane Nicoll 5f2bd1667b Merge branch '1.5.x' 8 years ago
Stephane Nicoll e88bda4682 Avoid extra space if condition is empty
Previously, if a builder was created with an empty condition, an extra
space was added before the message. This commit checks for this
particular case and adds a space only when necessary.

Closes gh-8218
8 years ago
Brian Clozel 8619d6a229 Rename EmbeddedServletContainer -> EmbeddedWebServer
This contract is not specific to servlet containers and should be
reused by all web server implementations (including reactive variants).

Fixes gh-8208
8 years ago
Andy Wilkinson 457d0414ea Make ConditionalOnBean a logical AND rather than an OR
Previously ConditionalOnBean was the inverse of
ConditionalOnMissingBean. This meant that the former was a logical OR
while the latter was a logical AND of the requiremnts declared via the
annotation's attributes.

This commit changes the logic for ConditionalOnBean so that it is now
a logical AND. A side-effect of this change is that more information
about what has and has not matched must be tracked during the
evaluation. This extra information is now used to provide more
informative messages in the condition evaluation report that indicate
exactly why @ConditionalOnBean or @ConditionalOnMissingBean did not
match.

Closes gh-5279
8 years ago
Stephane Nicoll 3c6d630a62 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 519a03ccda Polish 8 years ago
Johnny Lim 09998d1155 Fix ImportAutoConfigurationImportSelectorTests.determineImportsWhenUsingNonMetaWithClassesShouldBeSame()
Closes gh-8204
8 years ago
Stephane Nicoll 6af6e8e31b Remove auto-configuration for ServerProperties
This commit removes `ServerProperties` and `ManagementServerProperties`
auto-configurations. Those properties objects are now created using
`@EnableConfigurationProperties` only.

Closes gh-8108
8 years ago
Stephane Nicoll 98d2ed85e4 Fix broken build
Fix couchbase support until a solution is determined for
https://jira.spring.io/browse/DATACOUCH-279

See gh-8200
8 years ago
Stephane Nicoll cfdc75d384 Merge branch '1.5.x' 8 years ago
Johnny Lim 0adab8a2be Use logical 'and' instead of bitwise 'and'
Closes gh-8198
8 years ago
Tommy Ludwig 653366d664 Remove HikariCP-java6 dependency management
Dependency management for the `HikariCP-java6` dependency is no longer
needed since Java 6 is no longer supported by Spring Boot.

The HikariDriverConfigurationFailureAnalyzer has been updated with the
current message thrown by HikariCP in this failure scenario.

Closes gh-8147
8 years ago
Stephane Nicoll 5c663a9ece Merge branch '1.5.x' 8 years ago
Johnny Lim 846994e498 Polish
Closes gh-8148
8 years ago
Brian Clozel 7f39d5a865 Remove usage of Assert.notNull(Object)
This commit updates the Spring Boot codebase to adapt to the removal of
`Assert.notNull(Object)` in SPR-15196.

See gh-8140
8 years ago
Andy Wilkinson 95f659f4f9 Add new WebApplicationType enum to pave the way for Web Flux support
Closes gh-8077
8 years ago
Spring Buildmaster 5c12500366 Next Development Version 8 years ago
Artem Bilan eccefd1343 Make use of new extensions point in IntegrationComponentScanRegistrar
SI 5 has made IntegrationComponentScanRegistrar more extensible by
offering a method for getting the back packages that can be
overridden.

This commit takes advantage of that change by removing our creation
of "fake" annotation metadata and overriding getBackPackages to return
the auto-configuration packages instead.

Closes gh-7744
8 years ago
Spring Buildmaster a2696bf873 Next Development Version 8 years ago
Andy Wilkinson 4ea7dc6f31 Polish "Upgrade to Flyway 4.0"
See gh-5344
8 years ago
Eddú Meléndez a270c13d6f Upgrade to Flyway 4.0
Closes gh-5344
8 years ago
Phillip Webb 8747e039ee Merge branch '1.5.x' 8 years ago
Phillip Webb fa6a138598 Refine ImportsContextCustomizer cache logic
Update `ImportsContextCustomizer` so that whenever possible a more
specific cache key is used.

Prior to this commit the customizer would generate a key based on *all*
annotations on the test class. This has repeatedly caused issues where
test classes that should have the same cache key did not due to
unrelated annotations.

A new `DeterminableImports` interface has been added that can be
implemented by `ImportSelector` and `ImportBeanDefinitionRegistrar`
implementations that are able to determine their imports early. The
existing `ImportAutoConfigurationImportSelector` and
`AutoConfigurationPackages` classes have been retrofitted with
this interface.

Fixes gh-7953
8 years ago
Andy Wilkinson 31b0e81765 Add @FunctionalInterface to remaining public and protected interfaces
See gh-6857
8 years ago
Eddú Meléndez 3d52c86a21 Annotate interfaces with @FunctionaInterface
Closes gh-6857
8 years ago
Andy Wilkinson bed727ae8c Merge branch '1.5.x' 8 years ago
Andy Wilkinson f34d309548 Formatting 8 years ago
Spring Buildmaster ed1ce140c0 Next Development Version 8 years ago
Andy Wilkinson 5d24c9c589 Merge branch '1.5.x' 8 years ago
Andy Wilkinson f5445ba5ff Remove OnValidatorAvailableCondition as it is now redundant
Previously, Hibernate Validator would fail to initialize if it was
on the classpath but an EL implementation was not.
OnValidatorAvailableCondition protected against this scenario by
initializing the validator.

The Hibernate Validator shortcoming was addressed in eb222209
(gh-7598). As a result, checking for the precences of the
ValidationProvider META-INF/services resource is now sufficient to
auto-configure validation. This commit removes
OnValidatorAvailableCondition as it is no longer necessary.

Closes gh-8110
8 years ago
Andy Wilkinson 4993f32da8 Merge branch '1.5.x' 8 years ago
Brian Clozel de98c4b3ff Provide Reactor 3 auto-configuration
This commit provides auto-configuration for the Reactor Core 3 library.
A new configuration namespace, "spring.reactor" allows to configure
hooks on operators, like "spring.reactor.stacktrace-mode.enabled".

This property is enabled automatically by devtools, since it improves
the developer experience and provides full stacktrace information when
exceptions occur (but at a performance cost).

Fixes gh-7302
8 years ago
Andy Wilkinson f823599d1f Replace @PostConstruct validation with setter validation
Closes gh-7579
8 years ago
Andy Wilkinson 05831e4b87 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 37cf31f450 Upgrade to Couchbase Java Client 2.3.7
In version 2.3.6 and earlier, an attempt to create a Bucket or a
ClusterInfo would fail fast with a ConnectException in the cause of
the Couchbase server was done. In 2.3.7 this remains true for a
Bucket but is no longer the case for ClusterInfo. The latter now
retries for 75 seconds by default and when it eventually fails a
ConnectException is no longer part of the cause chain.

This commit makes the auto-configured ClusterInfo depend on the
auto-configured Bucket. This means that the Bucket is always created
before the ClusterInfo, thereby ensuring that things fail gracefully
with useful diagnostics when the server is unavailable.

Closes gh-8092
8 years ago
Andy Wilkinson 9bba73a1a9 Upgrade to Thymeleaf 3 and drop support for Thymleaf 2
This commit raises the minimum supported version of Thymeleaf to
3.0.x. It also upgrades Spring Social to a version that is compatible
with Thymeleaf 3.

Closes gh-7450
Closes gh-6258
See gh-7885
8 years ago
Stephane Nicoll 661fd848eb Merge branch '1.5.x' 8 years ago
Stephane Nicoll 505e7f75ea Polish contribution
Closes gh-8089
8 years ago
dreis d58f38f6f6 Use String.replace() with single char if possible
See gh-8089
8 years ago
Stephane Nicoll 551bfb2c60 Polish contribution
Closes gh-8103
8 years ago
Johnny Lim 32f9e90de5 Replace 'String.length() == 0' with 'String.isEmpty()'
See gh-8103
8 years ago
Stephane Nicoll d67ce78e8b Merge branch '1.5.x' 8 years ago
Johnny Lim e0de28a1f7 Polish
Closes gh-8076
8 years ago
Andy Wilkinson 0148276c05 Remove unnecessary warning suppressions 8 years ago
Phillip Webb 8ffaa54e74 Merge branch '1.5.x' 8 years ago
Phillip Webb b0e06c30a0 Polish 8 years ago
Phillip Webb de50cfa21e Make OnClassCondition an AutoConfigurationImportFilter
Update OnClassCondition to implement AutoConfigurationImportFilter so
that auto-configuration candidates can be filtered early. The
optimization helps to improve application startup time by reducing
the number of classes that are loaded.

See gh-7573
8 years ago
Phillip Webb 20a20b7711 Add AutoConfigurationImportFilter support
Add `AutoConfigurationImportFilter` strategy interface which can be used
to filter auto-configuration candidates before they are loaded.

See gh-7573
8 years ago
Phillip Webb 02641a8207 Optimize AutoConfigurationSorter
Optimize `AutoConfigurationSorter` by used properties generated by the
annotation processor whenever possible. The removes the need for each
candidate class to be ASM parsed just to access the order annotations.

See gh-7573
8 years ago
Phillip Webb 1cbda9bd60 Add AutoConfigurationMetadata abstraction
Add AutoConfigurationMetadata interface and a an internal loader that
allows easy access to data written by `spring-boot-configure-processor`.

See gh-7573
8 years ago
Madhura Bhave ca435512c0 Introduce spring-boot-autoconfigure-processor
Add an annotation processor that generates properties files for certain
auto-configuration class annotations. Currently attribute values from
@AutoConfigureOrder, @AutoConfigureBefore, @AutoConfigureAfter and
@ConditionalOnClass annotations are stored.

The properties file will allow optimizations to be added in the
`spring-boot-autoconfigure` project. Primarily by removing the need
to ASM parse as many `.class` files.

See gh-7573
8 years ago
Phillip Webb ccf964eb9a Optimize OnEnabledResourceChainCondition
Optimize OnEnabledResourceChainCondition by removing the DataBinder.
Properties are now read directly from the Environment.

See gh-7573
8 years ago
Phillip Webb f8ded6de63 Don't use DataBinder to work out excludes
Update `AutoConfigurationImportSelector` so that exclude properties
are loaded without invoking a `DataBinder`. This optimization helps
to improve application startup time.

See gh-7573
8 years ago
Phillip Webb cfd5a73b64 Don't call ReflectionUtils do deduce bean type
Update `OnBeanCondition` to no longer call `ReflectionUtils` when
deducing the bean method return type. Since Spring Framework 4.2
the return type has been directly available from `MethodMetadata`.

See gh-7573
8 years ago
Phillip Webb 996afafac6 Optimize OnClassCondition isPresent check
Update `OnClassCondition` to use its own `isPresent` rather than using
`ClassUtils.isPresent`. Using our own implementation saves a few cycles
since we never need to check for native types, and we don't support
nested class references specified in the non `$` notation.

See gh-7573
8 years ago
Phillip Webb 9650668291 Remove dependency from `root` to `condition`
Remove the slightly unusual dependency from the root autoconfigure
pacakge to `condition`. Prior to this commit the link was required in
ordere to populate the `ConditionEvaluationReport`. We now introduce
a `AutoConfigurationImportListener` strategy that allows anyone to
listen for AutoConfigurationImportEvents. The listener implementation
is now used to update the ConditionEvaluationReport.

Fixes gh-8073
8 years ago
Phillip Webb b225b7f33a Rename EnableAutoConfigurationImportSelector
Rename EnableAutoConfigurationImportSelector to the more general
AutoConfigurationImportSelector since it's now used for more than
just the enable annotation.

The existing EnableAutoConfigurationImportSelector class remains in
a deprecated form so that it can be made package-private again in
Spring Boot 2.0.

Fixes gh-8072
8 years ago
Phillip Webb 2c89d9918f Relocate AutoConfigurations from root package
Move PropertyPlaceholder and MessageSource auto-configuration from the
root package to the `context` subpackage.

Fixes gh-8071
8 years ago
Phillip Webb 3893383cbe Merge branch '1.5.x' 8 years ago
Phillip Webb 5703fb1515 Polish 8 years ago
Andy Wilkinson c543101dc1 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 9a79d32f4c Polishing 8 years ago
Andy Wilkinson 79bf7d473c Merge branch '1.5.x' 8 years ago
Andy Wilkinson c86b844477 Remove @Component from ResourceServerFilterChainOrderProcessor
Closes gh-8050
8 years ago
Andy Wilkinson d4c4bc35fd Start building against Spring Data Kay snapshots
See gh-7461
8 years ago
Andy Wilkinson 258595e162 Merge branch '1.5.x' 8 years ago
Andy Wilkinson a30fe9d9ff Update ServerPropertiesTests to tolerate changes in Tomcat 8.5.11
Closes gh-7360
8 years ago
Stephane Nicoll 4fe04178b7 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 915c959a28 Polish contribution
Closes gh-7600
8 years ago
Stephane Nicoll b19d31e067 Use a random port with embedded Mongo by default
This commit improves the logic of the embedded Mongo support to use a
random port if no custom port has been specified. This doesn't change
the default if the embedded support isn't active.

Closes gh-8044
8 years ago
Andy Wilkinson 65fe405f19 Merge branch '1.5.x' 8 years ago
Andy Wilkinson b900a3efc8 Update Actuator endpoints to use custom media type
Previously, the actuator's endpoints produced application/json and,
where appropriate, also consumed application/json. Without a custom,
versioned media type, it's impossible for us to make changes to the
endpoints without breaking clients.

This commit introduces a new media type,
application/spring-boot.actuator.v1+json, that is now produced by
default with application/json also being produced if requested.
Endpoints that consume JSON will now also accept content the uses
the new media type in addition to application/json.

Closes gh-7967
8 years ago
Phillip Webb 89f7ec054f Merge branch '1.5.x' 8 years ago
Phillip Webb f3cd0ad22c Polish 8 years ago
Madhura Bhave a5a382b8b1 Set AccessTokenConverter if available
Fixes gh-7091
8 years ago
Stephane Nicoll 7253bb334c Merge branch '1.5.x' 8 years ago
Stephane Nicoll e5e497ec3a Document `@ImportAutoConfiguration#exclude`
Closes gh-7862
8 years ago
Andy Wilkinson 3addb4c407 Merge branch '1.5.x' 8 years ago
Andy Wilkinson f93d4a0cbf Add explicit aliases for exclude and excludeName on SpringBootApplication
Previously, SpringBootApplication relied on implicity aliasing of
exclude and excludeName that worked because the two attributes have
the same names as the equivalent attributes on
EnableAutoConfiguration.

This commit updates SpringBootApplication to make the aliases explicit
and also adds tests to EnableAutoConfigurationImportSelectorTests to
verify that the aliasing is working as intended.

Closes gh-7951
8 years ago
Stephane Nicoll c54070d142 Merge branch '1.5.x' 8 years ago
Stephane Nicoll c41ff17dd7 Provide relevant default values for Enums
This commits adds manual metadata for enums that have a default value
since the annotation processor is not able to detect that yet.

Closes gh-7890
8 years ago
Phillip Webb 5502fa2936 Merge branch '1.5.x' 8 years ago
Phillip Webb f42ebe428c Remove JSR-330 configuration annotations
Replace JSR-330 validation annotations from all internal
`@ConfigurationProperties` classes with standard Asserts.

Prior to this commit validation of our own configuration properties
would only occur when the user happens to have compliant JSR-330
implementation on their classpath.

See gh-7579
8 years ago
Phillip Webb 0a6456a748 Always use `prefix` config annotation attribute
Update use of `@ConfigurationProperties` to prefer the more explicit
`prefix` attribute, rather than `value`.

See gh-7579
8 years ago
Phillip Webb 43d432a527 Polish 8 years ago
Andy Wilkinson a608e09990 Merge branch '1.5.x' 8 years ago
Kazuki Shimizu 19e117c9cb Use constructor injection in DataSourceInitializer
Closes gh-7973
8 years ago
Stephane Nicoll f4f5a70cb2 Merge branch '1.5.x' 8 years ago
Kazuki Shimizu bd6ae47d68 Prevent unnecessary debug log message creation
Closes gh-8001
8 years ago
Stephane Nicoll d556e82cf7 Polish contribution
Closes gh-8004
8 years ago
Johnny Lim acc36c076d Polish
See gh-8004
8 years ago
Stephane Nicoll f714b1d4be Merge branch '1.5.x' 8 years ago
Stephane Nicoll ada441bccc Allow custom override of user info OAuth2RestTemplate
Closes gh-5996
8 years ago
Stephane Nicoll 87cf236aae Merge branch '1.5.x' 8 years ago
Stephane Nicoll 3e05329fd7 Order internal RepositoryRestConfigurer
This commit provides an order of zero for the RepositoryRestConfigurer
that is used internally to configure the `RepositoryRestConfiguration`. In
practice, an unordered `RepositoryRestConfigurer` will run after ours.

Closes gh-7981
8 years ago
Stephane Nicoll d271b54f63 Merge branch '1.5.x' 8 years ago
Vedran Pavic 8f6a0e96fd Improve `UserInfoTokenServices` logging
Closes gh-7995
8 years ago
Andy Wilkinson ae3434ba4c Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson d2201d5284 Correct copyright dates and enforce that starting year is 2012
Closes gh-7923
8 years ago
Andy Wilkinson 3c35066ed5 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 426435f4af Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 1afb050061 Correct copyright dates and enforce that starting year is 2012
Closes gh-7923
8 years ago
Andy Wilkinson 6100b3e850 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 66915a456a Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 6f7d1de167 Remove redundant logic from OAuth2MethodSecurityConfiguration
Previously, OAuth2MethodSecurityConfiguration set the
PermissionEvaluator on the expression evaluator by looking in the
context for a PermissionEvaluator bean. This is unnecessary as
GlobalMethodSecurityConfiguration already does the same thing and does
so after the post-processor in OAuth2MethodSecurityConfiguration has
run. This commit removes the redundant logic and adds tests to check
that both the PermissionEvaluator and the RoleHierarchy are set use
beans in the context.

Closes gh-7979
8 years ago
Stephane Nicoll b4ceb46a6b Merge branch '1.5.x' 8 years ago
Stephane Nicoll 5ee12a824f Fix assertion
See gh-7962
8 years ago
Andy Wilkinson 78a06c3278 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 65025d8dab Enable Neo4J's open in view interceptor by default
Closes gh-7943
8 years ago
Stephane Nicoll 9afa52c18f Merge branch '1.5.x' 8 years ago
Stephane Nicoll 4523927e28 Polish 8 years ago
Phillip Webb c35454e5f4 Merge branch '1.5.x' 8 years ago
Phillip Webb 10de30ff11 Polish LDAP contribution
See gh-7733
8 years ago
Eddú Meléndez 6a84c369fd Add LDAP auto-configuration support
Add auto-configuration support for spring-ldap and spring-data-ldap.

See gh-2645
See gh-7733
8 years ago
Phillip Webb 77f9bb09ca Further Polish Mockito 2 support
See gh-7770
8 years ago
Phillip Webb 6776ec2704 Merge branch '1.5.x' 8 years ago
Phillip Webb 565f75438e Polish 8 years ago
Dave Syer 21be9ef666 Merge remote-tracking branch 'origin/1.5.x' 8 years ago
Dave Syer fe344df9c5 Change default order of OAuth2 resource server filter chain
The default is now SecurityProperties.ACCESS_OVERRIDE_ORDER-1
(instead of 3), and the user can set it with
security.oauth2.resource.filter-order (as opposed to being hard
coded). The filter is provided by Spring OAuth2 so this change is
a BeanPostProcessor to call a setter on that object.

Fixes gh-5072
8 years ago
Phillip Webb 125d9d6181 Merge branch '1.5.x' 8 years ago
Phillip Webb eb22220961 Upgrade to hibernate-validator 5.3.4
Upgrade to `hibernate-validator` 5.3.4 and introduce a new
`MessageInterpolatorFactory` that creates a suitable
`MessageInterpolator` (taking into account missing EL dependencies).

Rework `ConfigurationPropertiesBindingPostProcessor` and
`ValidationAutoConfiguration` to make use of the new factory.

Fixes gh-7598
8 years ago
Stephane Nicoll de4e3508f1 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 0a26a4146b Make `spring.session.store-type` mandatory
This commit removes the automatic enabling of Redis as the Spring Session
store when it is available. This case is covered by a warning in `1.4.x`
that this commit removes as well.

Closes gh-7858
8 years ago
Stephane Nicoll 9a113e3b64 Merge branch '1.5.x' 8 years ago
Stephane Nicoll bf7271afa5 Upgrade to Couchbase Cache Client 2.1.0
As of 2.1 cache expiration times are to be set in seconds. This commit
migrates to the new method, yet keeping the milliseconds unit.

Closes gh-7824
8 years ago
Stephane Nicoll 506f6497c0 Merge branch '1.5.x' 8 years ago
Johnny Lim f915ae197a Polish 8 years ago
Phillip Webb b1cb8bb3d9 Merge branch '1.5.x' 8 years ago
Phillip Webb 76d5b913cd Polish 8 years ago
Stephane Nicoll 85f176da08 Merge branch '1.5.x' 8 years ago
Stephane Nicoll fe89af5e82 Polish contribution
Closes gh-7796
8 years ago
Eddú Meléndez 24c83d12da Autodetect spring.jpa.database from spring.datasource.url
Previously, property `spring.jpa.database` should be provided. This
commit allows to detect the database when `spring.datasource.url` is
provided.

Closes gh-7708
8 years ago
Phillip Webb a90bad37bd Merge branch '1.5.x' 8 years ago
Phillip Webb b27f4e23be Ignore @ImportAutoConfiguration exclude errors
Update `ImportAutoConfigurationImportSelector` to ignore excludes for
classes that aren't loaded. Since the import classes for tests tend to
be much more limited, the exception isn't really helpful.

Closes gh-6809
8 years ago
Phillip Webb 53f1df86a2 Merge branch '1.5.x' 8 years ago
Phillip Webb aacf5d660f Update copyright year for changed files 8 years ago
Phillip Webb 273beaa3ce Polish 8 years ago
Phillip Webb f8acaae115 Merge branch '1.4.x' into 1.5.x 8 years ago
Phillip Webb 9ccf47398e Formatting 8 years ago
Stephane Nicoll 22a384ac28 Merge branch '1.5.x' 8 years ago
Kazuki Shimizu 85503fcbca Polishing log message and comment
Closes gh-7793
8 years ago
Stephane Nicoll a90a73d1ac Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll 7b494cf319 Polish
See gh-7793
8 years ago
Stephane Nicoll 0b67a89bc6 Merge branch '1.5.x' 8 years ago
Stephane Nicoll c230a21a8c Polish CacheManagerCustomizers
Closes gh-7792
8 years ago
Stephane Nicoll 2f3571f173 Defend against lambda transaction customizers
Update `CacheManagerCustomizers` to deal directly with
`ClassCastException` assuming that they are because a customizer is
implemented using a lambda.

Closes gh-7788
8 years ago
Stephane Nicoll 1fa8b1ac91 Defend against lambda transaction customizers
Update `CacheManagerCustomizers` to deal directly with
`ClassCastException` assuming that they are because a customizer is
implemented using a lambda.

Closes gh-7788
8 years ago
Phillip Webb 86a42e4e44 Merge branch '1.5.x' 8 years ago
Phillip Webb 54aeff47a2 Add exclude support to @ImportAutoConfiguration
Update `@ImportAutoConfiguration` with support for an exclude attribute
that works in a similar way to `@EnableAutoConfiguration`.

Also update existing `@Test...` annotation with exclude attribute
aliases.

Fixes gh-6809
8 years ago
Phillip Webb 4d73f3d2e9 Merge branch '1.5.x' 8 years ago
Phillip Webb 3c930347c5 Defend against lambda transaction customizers
Update `TransactionManagerCustomizers` to deal directly with
`ClassCastExceptions` assuming that they are because a customizer is
implemented using a lambda.

See gh-7561
8 years ago
Kazuki Shimizu a7b77e6f9a Remove a nested TransactionProperties
Remove a few nested `TransactionProperties` that should have been
deleted in commit f22744c748.

See gh-7561
Closes gh-7786
8 years ago
Stephane Nicoll 68d95f953a Merge branch '1.5.x' 8 years ago
Stephane Nicoll 7c25ccb0f3 Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll 1f5970c537 Fix auto-configuration class reference
Closes gh-7781
8 years ago
Stephane Nicoll 301b8bc611 Make the dependency to TransactionAutoConfiguration explicit
Closes gh-7773
8 years ago
Stephane Nicoll 6ba4b3cf86 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 4b641ca211 Polish
Closes gh-7561
8 years ago
Phillip Webb f9bbe43791 Merge branch '1.5.x' 8 years ago
Phillip Webb f22744c748 Add support for TransactionManagerCustomizers
Add a `TransactionManagerCustomizer` callback interface that can be
used to customize auto-configured `PlatformTransactionManagers`.

Also update `...transaction.*` properties under a single unified
`spring.transaction...` key since the existing auto-configurations
would often share a transaction manager (the technology specific
transaction managers are `@ConditionalOnMissingBean` and may use
a manager created by a previous auto-configuration).

See gh-7561
8 years ago
Phillip Webb 601f7c0a69 Polish 8 years ago
Phillip Webb 519f9c6c54 Merge branch '1.5.x' 8 years ago
Phillip Webb 8b69856fc9 Polish 8 years ago
Phillip Webb 49fa702708 Merge branch '1.5.x' 8 years ago
Phillip Webb 3af5ae2a26 Polish `ObjectProvider` names
Consistently use the simple name for ObjectProvider parameter and
field names. For example:

  `ObjectProvider<Something> something`

rather than

  `ObjectProvider<Something> somethingProvider`
8 years ago
Phillip Webb e0541d0f74 Polish 8 years ago
Stephane Nicoll 3fdfc3f052 Merge branch '1.5.x' 8 years ago
Stephane Nicoll b24c8d04ba Allow to customize the auto-configured JestClient
This commit adds a `HttpClientConfigBuilderCustomizer` to further tune
the auto-configured `JestClient`.

Closes gh-7762
8 years ago
Stephane Nicoll a60e356136 Enable Jest's multi-threaded support by default
Since the `JestClient` is auto-configured as a bean, it must have its
multi-threaded support enabled by default. This commit exposes a new
`spring.elasticsearch.jest.multi-threaded` property that is `true` by
default.

Closes gh-6806
8 years ago
Phillip Webb 291752a317 Merge branch '1.5.x' 8 years ago
Phillip Webb d05357e036 Migrate to Tomcat WebSocket client
Move samples and tests from Jetty websocket client to Tomcat since the
upcoming Jetty release contains a bug in `JsrSession`
(https://github.com/eclipse/jetty.project/issues/1202).

See gh-7599
8 years ago
Spring Buildmaster 9057f9ae1f Next development version 8 years ago
Stephane Nicoll 219e0baa58 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 449043bf21 Polish contribution
Closes gh-6900
8 years ago
Vedran Pavic 65c2d1f5e7 Add support for vendor specific Flyway migration locations
This commit adds support for using `{vendor}` placeholder in
`flyway.locations` configuration property value.

See gh-6900
8 years ago
Stephane Nicoll 234c170bbb Merge branch '1.5.x' 8 years ago
Stephane Nicoll 62bff1017e Validate that AopAutoConfiguration back off properly
Closes gh-7694
8 years ago
Stephane Nicoll 6d0888ecf4 Merge branch '1.5.x' 8 years ago
Stephane Nicoll eb294956d8 Allow to customize Cluster.Builder rather than Cluster
Rework cb3d14a so that the customizer operates on the Builder rather than
the Cluster. The former exposes many more options.

See gh-7320
Closes gh-7669
8 years ago
Phillip Webb 6e02fe59f7 Merge branch '1.5.x' 8 years ago
Phillip Webb 982f41b70c Polish @IntegrationComponentScan auto-configuration
See gh-2037
See gh-7718
8 years ago
Artem Bilan a79f71cbe8 Add @IntegrationComponentScan auto-configuration
Update Spring Integration auto-configuration so that
`@IntegrationComponentScan` from `AutoConfigurationPackages` is
implicitly applied. Prior to this commit `@MessagingGateway` interfaces
would only get picked up if `@IntegrationComponentScan` was added
alongside with the `@SpringBootApplication`.

Fixes gh-2037
Closes gh-7718
8 years ago
Phillip Webb b87e02dde0 Polish Spring Integration metrics support
See gh-7722
8 years ago
Artem Bilan d69e43b433 Refactor Spring Integration metrics support
Update Spring Integration metrics support since Spring Integration
`4.3.6`+ no longer needs `spring-integration-jmx` enable
`MessageChannel`, `MessageHandler` and `MessageSource` metrics.

- Add `IntegrationManagementConfiguration` conditional auto-configuration
  to provide `@EnableIntegrationManagement` when JMX is `enabled` or there
  is no `IntegrationManagementConfigurer.MANAGEMENT_CONFIGURER_NAME` bean.
  By default this bean doesn't exist and you explicitly should declare it
  (e.g. via `@EnableIntegrationManagement`) if you would like to collect
  metrics. At the same time Spring Integration enables it when JMX
  management is present (that is a purpose of that new
  `IntegrationManagementConfiguration`)

- Change `SpringIntegrationMetricReader` to read metrics from the
  `IntegrationManagementConfigurer`, not `IntegrationMBeanExporter`

- Change `PublicMetricsAutoConfiguration` to register
  `IntegrationManagementConfigurer.MANAGEMENT_CONFIGURER_NAME` bean if
  not present. Since we are here in `actuator`, therefore we are
  interested in the metrics for SI as well.

- Since we don't need JMX for the metrics any more, remove SI-JMX
  dependency from the `spring-boot-starter-integration`.

- Remove `IntegrationManagementConfiguration` modification from the
  `integrationMbeanExporter()`, since that looks like mutation of an
  external object, when end-user would prefer their own options.
  Therefore we don't need `ObjectProvider<IntegrationManagementConfigurer>`, too

- Add missed `MessageSourceMetrics` gathering for the
  `SpringIntegrationMetricReader`

Closes gh-7722
8 years ago
Artem Bilan 28474aa30a Fix compatibility with Apache Kafka 0.10.1
Update KafkaProperties since  Apache Kafka `0.10.1` changed the type
for the `ConsumerConfig.AUTO_COMMIT_INTERVAL_MS_CONFIG` from the
`Long` to `Integer`.

Kafka includes the following conversion logic:

    case LONG:
        if (value instanceof Integer)
            return ((Integer) value).longValue();
        if (value instanceof Long)
            return (Long) value;
        else if (value instanceof String)
            return Long.parseLong(trimmed);

So we remain compatible with both `0.10.0` and `0.10.1`

Closes gh-7723
8 years ago
Johnny Lim e12b4a944f Polish 8 years ago
Phillip Webb ae389d27a6 Polish 8 years ago
Phillip Webb 8b47561f7e Merge branch '1.5.x' 8 years ago
Phillip Webb 8f7efbe12a Polish `spring.redis.url` support
See gh-7395
8 years ago
Marco Aust 90eb58252e Add support for `spring.redis.url` property
Update `RedisAutoConfiguration` to optionally configure Redis using a
`spring.redis.url` property`.

Closes gh-7395
8 years ago
Phillip Webb 38f7389eab Polish loggers 8 years ago
Phillip Webb 1f7b3cad45 Polish Kafka properties
Closes gh-7672
8 years ago
Gary Russell bdda470305 Support arbitrary Kafka properties
Add support for arbitrary Kafka properties via
`spring.kafka.properties.*` and also a `spring.kafka.max.poll.records`
property.

See gh-7672
8 years ago
Phillip Webb 99e72664d9 Polish spring transaction manager properties
Polish and update contribution so that TransactionManager properties can
be defined per technology, rather than globally.

Closes gh-7561
8 years ago
Kazuki Shimizu 80eee6b30f Support spring transaction manager properties
Add Spring TransactionManager properties to allow timeout and rollback
settings to be configured.

See gh-7561
8 years ago
Phillip Webb 3f4c32fcdd Polish 8 years ago
Dave Syer 5fa507a477 Merge remote-tracking branch 'origin/1.5.x' 8 years ago
Dave Syer 6ccd858fc0 Fix checkstyle violations 8 years ago
Dave Syer 0b6778754c Merge remote-tracking branch 'origin/1.5.x' 8 years ago
Dave Syer 77a1a3b3c0 Allow user to signal that OAuth2 client is using client_credentials
By configuring security.oauth2.client.grantType=client_credentials the
user signals that (even in a web application) he doesn't want to use
the auth code grant (and hence session and request scoped beans for
client context).
8 years ago
Stephane Nicoll 998ff2feee Merge branch '1.5.x' 8 years ago
Stephane Nicoll 851ce2286f Allow to override Couchbase's CustomConversions
Closes gh-7700
8 years ago
Phillip Webb e248b67751 Polish formatting 8 years ago
Phillip Webb 1f417997f3 Merge branch '1.5.x' 8 years ago
Phillip Webb 6121208cbb Polish formatting 8 years ago
Phillip Webb 4b9cba351b Merge branch '1.4.x' into 1.5.x 8 years ago
Phillip Webb bd74c3d327 Polish formatting 8 years ago
Stephane Nicoll 0e8ccbc1d9 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 9104ea81e8 Expose Validator bean
This commit improves ValidationAutoConfiguration so that a `Validator`
bean is exposed if JSR 303 is available. This has the side effect of
automatically enable Spring Data Couchbase's entity validation rather
than requiring to expose a `Validator` bean.

Closes gh-5178
8 years ago
Andy Wilkinson a349e2f5ae Merge branch '1.5.x' 8 years ago
Andy Wilkinson cedac27c80 Require Bean Validation 1.1 to enable validation auto-configuration
Previously, ValidationAutoConfiguration would configure a
MethodValidationPostProcessor if any Bean Validation 1.0 or later
implementation was available, however the underlying infrastructure
requires Bean Validation 1.1 with any implementation or
Bean Validation 1.0 with Hibernate Validator 4.3.

This caused a problem on TomEE which uses Apache BVal, and Bean
Validation 1.0 implementation. Spring Framework would identify that
Bean Validaton 1.0 was being used and then try to load Hibernate
Validator classes that are not present.

This commit fixes the problem by requiring Bean Validation 1.1 before
auto-configuring a MethodValidationPostProcessor.

Closes gh-7665
8 years ago
Andy Wilkinson 943262bb97 Raise the minimum supported version of Hibernate to 5.2.x
Closes gh-7586
8 years ago
Stephane Nicoll 9056e9bd7e Merge branch '1.5.x' 8 years ago
Stephane Nicoll d8d5950e99 Enable validation in `AutoConfigureWebMvc`
Closes gh-7582
8 years ago
Andy Wilkinson cea00f22b1 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 149f19cd58 Register any EventListener beans with auto-configured SessionFactory
Closes gh-7531
8 years ago
Stephane Nicoll b80ad2a212 Harmonize Caffeine CacheManager bean name
Closes gh-6980
8 years ago
Madhura Bhave 1cd1054514 Merge branch '1.5.x' 8 years ago
Madhura Bhave 95be208f0f Use IgnoredRequestCustomizer to ignore paths
Update `SpringBootWebSecurityConfiguration` to ignore requests by
delegating to `IgnoredRequestCustomizer` beans. This allows a single
Spring Boot `WebSecurityConfigurer<WebSecurity>` bean to be used which
prevents potential exceptions caused by duplicate `@Order` values.

Fixes gh-7106
8 years ago
Phillip Webb 263d444d4e Merge branch '1.5.x' 8 years ago
Phillip Webb f6b0652369 Merge branch '1.4.x' into 1.5.x 8 years ago
Madhura Bhave 64da63aa96 Use empty message for Non-Spring Boot Condition
Update `AbstractNestedCondition` to use an empty message for non
Spring Boot nested conditions.

Fixes gh-7519
Closes gh-7529
8 years ago
Phillip Webb e430583eaf Polish 8 years ago
Andy Wilkinson d0b1cad00f Merge branch '1.5.x' 8 years ago
Andy Wilkinson 967625db1e Replace field injection with constructor injection in config classes
Closes gh-7563
8 years ago
Andy Wilkinson 73ba04f878 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 5ac75c949c Increate timeout in Kafka tests as Windows CI agents are very slow 8 years ago
Andy Wilkinson 598eca7e0f Merge branch '1.5.x' 8 years ago
Andy Wilkinson 1464425d64 Remove use of @Component from classes that are not scanned
Closes gh-7549
8 years ago
Andy Wilkinson 665d82ab9b Merge branch '1.5.x' 8 years ago
Andy Wilkinson b60150b05e Make Tomcat Access Log's buffering configurable via the environment
Closes gh-7456
8 years ago
Stephane Nicoll 816c236e5b Merge branch '1.5.x' 8 years ago
Stephane Nicoll ee72e788ed Rename `spring-boot-junit-runners` to `spring-boot-test-support`
Closes gh-7421
8 years ago
Andy Wilkinson b4695a2e80 Merge branch '1.5.x' 8 years ago
Andy Wilkinson fdccd8aaa7 Remove use of field injection from ErrorMvcAutoConfiguration 8 years ago
Stephane Nicoll bd2415463c Merge branch '1.5.x' 8 years ago
Stephane Nicoll cb9e021fa9 Polish 8 years ago
Stephane Nicoll a4770f90dc Merge branch '1.5.x' 8 years ago
Stephane Nicoll 2c630b5c61 Validate schema and data resources
Previously, if a user specifies a path to a schema or data DDL that does
not exist, the application will start up fine and the missing DDL would
not be reported.

This commit validates that user-defined resources actually exist and
throw a new `ResourceNotFoundException` if they don't.

Closes gh-7088
8 years ago
Stephane Nicoll 056819b2aa Merge branch '1.5.x' 8 years ago
Mark Paluch 6698cb71c4 Add User-defined type support for Cassandra
Configure `SimpleUserTypeResolver` if a keyspace is set to resolve
User-defined types.

Closes gh-7523
8 years ago
Stephane Nicoll 0e7f9dae45 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 2f48c50e84 Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll e5ca4990d0 Fix bootstrap-hosts property detection with list
Previously, if `spring.couchbase.bootstrap-hosts` was specified in YAML
or with the `[Idx]` notation, the auto-configuration would not kick in.

This is due to a limitation of `@ConditionalOnProperty` on a property of
type Collection. This commit workarounds this limitation for now with a
dedicated condition.

Closes gh-7508
8 years ago
Stephane Nicoll 2dbebf67e8 Merge branch '1.5.x' 8 years ago
Johnny Lim c654eff41b Update doc for spring.data.neo4j.open-in-view
See gh-7533
8 years ago
Stephane Nicoll 0568afc6cb Merge branch '1.5.x' 8 years ago
Johnny Lim 423f8037ce Polish
Closes gh-7530
8 years ago
Stephane Nicoll e7275b62dc Merge branch '1.5.x' 8 years ago
Oscar Utbult fabe35fdc4 Remove redundant toString() invocation
Closes gh-7527
8 years ago
Phillip Webb fe63c981f8 Merge branch '1.5.x' 8 years ago
Phillip Webb dada7423b0 Polish 8 years ago
Phillip Webb b4c3f4f504 Merge branch '1.5.x' 8 years ago
Phillip Webb ec73144240 Fix warnings 8 years ago
Phillip Webb 5ed00b3501 Merge branch '1.4.x' into 1.5.x 8 years ago
Phillip Webb 9fdb563d5a Polish 8 years ago
Phillip Webb 357d072a60 Polish 8 years ago
Andy Wilkinson 4870349438 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 2be554456e Introduce SearchStrategy.ANCESTORS as a replacement for .PARENTS
Closes gh-6763
8 years ago
Stephane Nicoll a2803f4139 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 5d876125de Refine validation auto-configuration
Checking for the presence of a `ValidationProvider` resource is
unfortunately not enough to trigger the validation auto-configuration.

If `hibernate-validator` is added on the classpath without a `javax.el`
implementation, the former will blow up on startup. So far this was a
pilot error so we didn't have to care about it. Now that we have an
auto-configuration that may lead to this error, we need to be extra
careful and check that scenario ourselves.

This commit adds an extra condition that runs as late as possible and
attempt to actually initialize a `Validator`. If that fails for whatever
reason, the auto-configuration will now back off.

Several additional tests have been added to exercise this scenario.

Closes gh-6228
8 years ago
Stephane Nicoll e354576c09 Merge branch '1.5.x' 8 years ago
Johnny Lim cabb564804 Add ValidationAutoConfiguration to spring.factories
Closes gh-7494
8 years ago
Stephane Nicoll e81f7d5811 Remove deprecated code
See gh-7362
8 years ago
Stephane Nicoll f260cd9a07 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 0befc310cd Add dedicated settings for maxHttpPostSize
This commit deprecates `server.max-http-post-size` and introduces a
dedicated property for each supported  container. In particular, Undertow
can now define a max size higher than 2GB.

Closes gh-7362
8 years ago
Stephane Nicoll 3bfbbeb9f4 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 22208f6a9e Auto-configure validation constraints on bean methods
This commit auto-configures `MethodValidationPostProcessor` if necessary
when a JSR-303 validator implementation is detected on the classpath.

Closes gh-6228
8 years ago
Stephane Nicoll fd62707cbb Merge branch '1.5.x' 8 years ago
Stephane Nicoll 7e25c0dcdd Fix build 8 years ago
Stephane Nicoll c62f340c34 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 57605b6749 Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll 65b6d8f4f7 Handle `NoClassDefFoundError` in `OnBeanCondition`
If `OnBeanCondition` is used with a `String` literal representing the
fully qualified name of a bean and such type does not exist, it
gracefully manages it as if it was not found. Prior to this commit, an
exception would be thrown if any related class such as the parent
class does not exist.

This commit handles this additional case, catching `NoClassDefFoundError`
the same way it did handle `ClassNotFoundException`. That way, a
missing type will now be considered as absent if it's not on the
classpath.

Closes gh-7459
8 years ago
Stephane Nicoll 662b05b90c Merge branch '1.5.x' 8 years ago
Stephane Nicoll 64a50b60ab Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll 5e8ba5cef6 Fix Couchbase condition on Spring Data class
This commit reverts 7e2d0fd so that the Couchbase auto-configuration can
work without Spring Data again. It also removes the `Class` reference to
a Spring Data class to a `String` reference to make sure the condition
operates properly when said class isn't on the classpath.

Closes gh-7453
8 years ago
Stephane Nicoll 94542cee1f Merge branch '1.5.x' 8 years ago
Stephane Nicoll 64e0899456 Polish customize Cassandra's Cluster
Closes gh-7320
8 years ago
Eddú Meléndez cb3d14a305 Allow to customize Casssandra's Cluster
This commit allows to configure special customizers to be used by
Cluster.

Closes gh-7312
8 years ago
Stephane Nicoll 2f57e1885a Merge branch '1.5.x' 8 years ago
Stephane Nicoll ea023618a4 Polish upgrade to Spring Session 1.3.0.RC1
Closes gh-7457
8 years ago
Vedran Pavic ffec6fddd2 Upgrade Spring Session to 1.3.0.RC1
See gh-7457
8 years ago
Phillip Webb e0dfff2b23 Merge branch '1.5.x' 8 years ago
Phillip Webb 88c84ce234 Merge branch '1.4.x' into 1.5.x 8 years ago
Phillip Webb b6b8bef009 Polish 8 years ago
Phillip Webb 7e2d0fd1c0 Check for Spring Data before configuring Couchbase
Add guard to `CouchbaseAutoConfiguration` so ensure that Spring Data
Couchbase is on the classpath.

Fixes gh-7453
8 years ago
Grigory Fadeev 1ea829e003 Fix connector used to configure connection timeout
Fix Tomcat customization so that the main connection is configured with
any timeout.

Closes gh-7425
8 years ago
Andy Wilkinson 8d589b9a05 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 65d0c07fd6 Polish "Validate excluded autoconfiguration classes"
- Apply code formatting
- Move configuration of excepted exception to immediately before line
  that will throw the exception
- Use String.format with %n to produce platform-specific new lines

See gh-7407
8 years ago
Madhura Bhave a9ffdca6f2 Validate excluded autoconfiguration classes
Closes gh-7407
See gh-6865
8 years ago
Andy Wilkinson 0b94d71671 Merge branch '1.5.x' 8 years ago
Andy Wilkinson ff4bbd9291 Fix javadoc and apply code formatting to Kafka contribution
See gh-6961
8 years ago
Andy Wilkinson 9e4fea5f54 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 29f0ae3fa8 Use a random port in new tests in SpringBootWebSecurityConfigurationTests
See gh-7373
8 years ago
Stephane Nicoll e3688455fa Merge branch '1.5.x' 8 years ago
Stephane Nicoll cc07f56c87 Merge pull request #6961 from garyrussell:kafkaAutoConfig
* pr/6961:
  Polish "Apache Kafka support" contribution
  Add Apache Kafka support
8 years ago
Stephane Nicoll 642af52d01 Polish "Apache Kafka support" contribution
Closes gh-6961
8 years ago
Gary Russell c4188c8e4a Add Apache Kafka support
See gh-6961
8 years ago
Andy Wilkinson bbf6fee446 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 5a9fc9aa49 Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 3464c0b16e Ensure that Hypermedia-related auto-config works without Jackson
Previously, both HypermediaAutoConfiguration and HttpMessageConverters
assumed that if Spring HATEOAS was on the class path, then Jackson
would be too. When this was not the case, an application would fail
to start.

This commit updates both classes to back off appropriately when
Spring HATEOAS is on the classpath but Jackson is not.

Closes gh-7434
8 years ago
Stephane Nicoll 77bef0536f Merge branch '1.5.x' 8 years ago
Stephane Nicoll 9423b9831c Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll 249ed899a6 Fix use of KB and MB in Multipart documentation
Closes gh-7364
8 years ago
Phillip Webb 20d7dd5747 Merge branch '1.5.x' 8 years ago
Phillip Webb 1657120286 Move ModifiedClassPathRunner to its own module
Migrate `ModifiedClassPathRunner` from `spring-boot` test source to
its own module.

Fixes gh-7420
8 years ago
Phillip Webb 9e18021e8c Merge branch '1.4.x' into 1.5.x 8 years ago
Phillip Webb fce17ca6d9 Polish 8 years ago
Andy Wilkinson 9273b1789b Merge branch '1.5.x' 8 years ago
Andy Wilkinson 1cd781b242 Make spring-boot-test compatible with Mockito 2.1 and 2.2
We use some internal Mockito classes and some  breaking API changes
have been made to them in Mockito 2. This commit introduces a utility
class, SpringBootMockUtil, to shield our code from these differences.
Mockito 1 is called directly and Mockito 2 is called via reflection.

To allow these changes to be tested, FilteredClassPathRunner has been
enhanced to also support overriding a dependency on the class path.
As a result it has been renamed to ModifiedClassPathRunner. The new
ClassPathOverrides annotation can be used to provide the Maven
coordinates of one or more dependencies that should be resolved and
added to the class path. Such additions are added to the start of
the class path so that they override any existing dependency that
contains the same classes.

Closes gh-6520
8 years ago
Andy Wilkinson ae8ad454b3 Merge branch '1.5.x' 8 years ago
Andy Wilkinson af4ca7cf6e Align Spring Data Neo4j auto-configuration with latest Ingalls snapshots
Closes gh-7391
8 years ago
Stephane Nicoll 7ebe324514 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 2ba3b27954 Merge branch '1.4.x' into 1.5.x
# Conflicts:
#	spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/ServerProperties.java
#	spring-boot-docs/src/main/asciidoc/appendix-application-properties.adoc
8 years ago
Stephane Nicoll 0072a93915 Expose Tomcat's accesslog requestAttributesEnabled
This commit adds an extra property to the `server.tomcat.accesslog` to
control the `reqestAttributesEnabled` flag. This flag sets request
attributes for IP address, Hostname, protocol and port used for the
request.

Closes gh-7367
8 years ago
Phillip Webb cb7c0b5031 Merge branch '1.5.x' 8 years ago
Phillip Webb 238c22cd73 Polish content security policy contribution
See gh-7373
See gh-7373
8 years ago
Christoffer Sawicki d7bbea63b7 Add properties for content security policy
Add `content-security-policy` and `content-security-policy-mode`
`security.header` properties and update auto-configuration to apply
them when specified.

Fixes gh-7373
Closes gh-7357
8 years ago
Johnny Lim 8038882d46 Polish
Closes gh-7403
8 years ago
Andy Wilkinson 4edab86ba2 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 387a406aad Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson b3e0a37197 Remove unwanted System.out calls in test code 8 years ago
Spring Buildmaster e712a9ba8c Next Development Version 8 years ago
Stephane Nicoll af82cbbfa9 Relaxed test assertion 8 years ago
Stephane Nicoll ea35da0305 Merge branch '1.5.x' 8 years ago
Stephane Nicoll b51f92d9a4 Merge branch '1.4.x' into 1.5.x 8 years ago
Vedran Pavic 5783cd5593 Fix JWT token URI derivation
Closes gh-7299
8 years ago
Phillip Webb 0cdde3b83c Merge branch '1.5.x' 8 years ago
Phillip Webb 81c5753f4d Merge branch '1.4.x' into 1.5.x 8 years ago
Phillip Webb 90afc8ebbe Formatting 8 years ago
Andy Wilkinson 4486d2d209 Upgrade to Reactor 3.0 and start building against SI 5.0 snapshots
Closes gh-7301
See gh-7029
8 years ago
Madhura Bhave 3fd586aeeb Merge remote-tracking branch 'springsource/1.5.x' 8 years ago
Madhura Bhave 73308ba24b Merge remote-tracking branch 'springsource/1.4.x' into 1.5.x 8 years ago
Madhura Bhave b04a74f01d Fix failure analysis for Collections and Maps
Closes gh-6996
8 years ago
Andy Wilkinson 05732613dd Update ConditionalOnJava and its usage now that Boot requires Java 8
Closes gh-6982
8 years ago
Phillip Webb 98a3ae9ac4 Merge branch '1.5.x' 8 years ago
Phillip Webb 5b66ffbb4b Merge branch '1.4.x' into 1.5.x 8 years ago
Phillip Webb f4328b41af Polish 8 years ago
Phillip Webb 1b17677e0b Polish TLD skip pattern support
See gh-5010
8 years ago
Phillip Webb dbf6d3d418 Don't detect persistenceUnitRootLocation
Update JpaBaseConfiguration so that the persistenceUnitRootLocation is
no longer detected. The update to gh-7003 means that we can now rely on
the standard detection mechanism.

Fixes gh-6983
See gh-6635
8 years ago
Stephane Nicoll d6239b1202 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 9100897dcb Automatically exclude auto-configurations from component scan
Previously, if an auto-configuration class was (wrongly) located in a
candidate package for component scanning, the class was silently loaded
as an app configuration (i.e. with the wrong lifecycle).

This commit adds an `AutoConfigurationExcludeFilter` to
`@SpringBootApplication` so that such classes are automatically
filtered. Since they are registered in `spring.factories`, we can
silently ignore them since we know they'll be loaded later on.

Closes gh-7168
8 years ago
Stephane Nicoll 713f4dd723 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 4f06e52d7e Allow adding additional tld skip patterns
This commit improves `TomcatEmbeddedServletContainerFactory` so that tld
skip patterns can be set or added to an existing set. An additional
`server.tomcat.additional-tld-skip-patterns` is now being exposed to
easily add patterns via configuration.

Closes gh-5010
8 years ago
Stephane Nicoll 468a466100 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 94da9ad6e6 Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll 1a6ab90255 Polish test 8 years ago
Stephane Nicoll bbea134e1c Merge branch '1.5.x' 8 years ago
Stephane Nicoll ed7de8eb60 Polish contribution
Also add rotate attribute to Undertow

Closes gh-7225
8 years ago
Matthieu Mouminoux 1d95219c4b Allow to configure Tomcat's rotatable property
See gh-7225
8 years ago
Stephane Nicoll 73b5afa56e Merge branch '1.5.x' 8 years ago
Stephane Nicoll ae4dd0d17e Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll a638dcd51b Remove unnecessary use of System.out.println 8 years ago
Andy Wilkinson a4bc341028 Merge branch '1.5.x' 8 years ago
Andy Wilkinson a416f496c0 Clean up deprecation and unused code warnings 8 years ago
Andy Wilkinson 7c870ea4fb Merge branch '1.5.x' 8 years ago
Andy Wilkinson 29d4a01b30 Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 7968c6b548 Assign on order to OnPropertyCondition
Closes gh-7144
8 years ago
Andy Wilkinson cc04621dc2 Assign an order to OnResourceCondition
Closes gh-7145
8 years ago
Phillip Webb 277d01ab53 Merge branch '1.5.x' 8 years ago
Madhura Bhave 90722a9bca Add @ConditionalOnCloudPlatform
Add a @ConditionalOnCloudPlatform annotation that matches based on the
active ClouldPlatform.

Fixes gh-7155
8 years ago
Phillip Webb 01900c8342 Merge branch '1.5.x' 8 years ago
Phillip Webb d818a09ed8 Polish 8 years ago
Phillip Webb d3e06c4627 Merge branch '1.4.x' into 1.5.x 8 years ago
Phillip Webb db3f488d5a Polish 8 years ago
Stephane Nicoll 7f2806bd19 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 6fb53f90e5 Polish contribution
Closes gh-6666
8 years ago
Maciej Walkowiak 47ec8630c8 Add Rabbit idleEventInterval property
This commit adds a property to configure how often idle container events
should be published.

See gh-6666
8 years ago
Andy Wilkinson 58770e0c73 Merge branch '1.5.x' 8 years ago
Andy Wilkinson f0b235cbc5 Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 0333416952 Update WelcomePageHandlerMapping to handle reqs with no Accept header
Closes gh-7138
8 years ago
Stephane Nicoll 097c64a91b Merge branch '1.5.x' 8 years ago
Stephane Nicoll ab2a2579c8 Polish contribution
Closes gh-6571
8 years ago
Aurélien Leboulanger 7efdb91641 Manage Tomcat queued connections
Adding two tomcat server properties:
- server.tomcat.accept-count
- server.tomcat.max-connections

Closes gh-6433
8 years ago
Stephane Nicoll 97774afebf Merge branch '1.5.x' 8 years ago
Stephane Nicoll 3e1425ebed Polish contribution
Closes gh-6543
8 years ago
Vedran Pavic 286a928347 Improve database initializers
This commit improves database initializers for Spring Batch and Spring
Session by introducing `AbstractDatabaseInitializer` which eliminates
duplicated logic in existing initializers. Additionally, database
platform resolution now relies on `DatabaseDriver`.

See gh-6543
8 years ago
Stephane Nicoll 5a2eae5628 Merge branch '1.5.x' 8 years ago
Stephane Nicoll ed333a67b4 Expose Spring Data Rest RepositoryDetectionStrategy
Closes gh-7113
8 years ago
Stephane Nicoll 640a77fcfa Merge branch '1.5.x' 8 years ago
Stephane Nicoll 02b0e3955c Merge branch '1.4.x' into 1.5.x 8 years ago
Johnny Lim 1c4c0c6119 Fix String.format() usages
Closes gh-7120
8 years ago
Andy Wilkinson c465fcefad Merge branch '1.5.x' 8 years ago
Andy Wilkinson 9b8f33df6d Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 20a2db79bd Separate conditions that did and did not match in auto-config report
Closes gh-7098
8 years ago
Stephane Nicoll b54566c0cd Merge branch '1.5.x' 8 years ago
Stephane Nicoll f82e91df39 Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll 03961e6692 Polish contribution
Closes gh-7004
8 years ago
Rob Fletcher 7fcb197092 Allow configuration to specify randomly generated database name
See gh-7004
8 years ago
Stephane Nicoll 2ff41ce9cc Merge branch '1.5.x' 8 years ago
Stephane Nicoll 200e246238 Merge branch '1.4.x' into 1.5.x 8 years ago
Johnny Lim 91254f2110 Remove unused parameters in String.format()
Closes gh-7111
8 years ago
Stephane Nicoll 8b61d15120 Remove deprecated support for commons-dbcp 1
See gh-6787
8 years ago
Stephane Nicoll 543498f040 Merge branch '1.5.x' 8 years ago
Stephane Nicoll cf28663cd7 Deprecate commons-dbcp 1
Closes gh-6787
8 years ago
Stephane Nicoll 0d5985b8dd Merge branch '1.5.x' 8 years ago
Stephane Nicoll 07690bab25 Allow customization of the auto-configured JmsTemplate
Closes gh-6825
8 years ago
Phillip Webb 53f50eda39 Merge branch '1.5.x' 8 years ago
Phillip Webb a2315378d4 Formatting 8 years ago
Phillip Webb f2b0fa284e Merge branch '1.4.x' into 1.5.x 8 years ago
Phillip Webb 3326841a97 Formatting 8 years ago
Phillip Webb 39ed0d4dfb Polish 8 years ago
Stephane Nicoll f181421f67 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 8ad477537e Fail fast if both uri and client attributes are set
Previously, an URI and individual client attributes can be set to
configure the mongo client. In such a scenario, the URI is ignored.

This commit changes the URI to be "null" and the creation of the client
to fail if both the uri and client attributes are set. If no client
attributes are set, the uri is used as before.

Closes gh-6739
8 years ago
Stephane Nicoll b95b57dbf5 Merge branch '1.5.x' 8 years ago
Stephane Nicoll e643fc5bd1 Merge branch '1.4.x' into 1.5.x 8 years ago
Johnny Lim 503d735fdd Polish
Closes gh-7081
8 years ago
Stephane Nicoll 8f96278ce9 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 7ffa499949 Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll e56119165e Close JestClient on shutdown
Closes gh-7051
8 years ago
Stephane Nicoll 8ed20068ca Fix list property to be mutable
Closes gh-7045
8 years ago
Andy Wilkinson f82dc8e043 Upgrade to JMS API 2.0
Closes gh-7049
8 years ago
Andy Wilkinson 241ab10160 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 2a035d0748 Remove support for Velocity following its deprecation in 1.4
Closes gh-6971
8 years ago
Andy Wilkinson 464915d2cc Remove support for HornetQ following its deprecation in 1.4
See gh-6971
8 years ago
Andy Wilkinson ae7faa233a Merge branch '1.5.x' 8 years ago
Andy Wilkinson 0232e3b16c Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson d08c84af42 Ensure that JtaAutoConfiguration runs before ArtemisAutoConfiguration
Closes gh-7062
8 years ago
Andy Wilkinson 0e018c6037 Merge branch '1.5.x' 8 years ago
Andy Wilkinson b4d052a7b3 Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 33ea73996e Make auto-config for Narayana back off when Transaction SPI not on classpath
Closes gh-7061
8 years ago
Stephane Nicoll 8b6d7eedc0 Merge branch '1.5.x' 8 years ago
Vedran Pavic c4aa78679a Upgrade Hazelcast to 3.7.1
In addition, dependency management for `hazelcast-hibernate5` module has
been added, and a separate dependency version was introduced for
`hazelcast-hibernate4` module.

Closes gh-7023
8 years ago
Stephane Nicoll 49a606fa91 Merge branch '1.5.x' 8 years ago
Stephane Nicoll cdd59707fc Merge branch '1.4.x' into 1.5.x 8 years ago
Johnny Lim 30a677646f Polish
Closes gh-7030
8 years ago
Andy Wilkinson 63796a2a82 Merge branch '1.5.x' 8 years ago
Vedran Pavic f485660482 Upgrade Spring Session to 1.3.0.M2
Closes gh-6979
8 years ago
Stephane Nicoll 133739b222 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 7dfa3a8c83 Harmonize Caffeine CacheManager bean name
Closes gh-6980
8 years ago
Andy Wilkinson aaf435ff2a Suppress Neo4J-related deprecation warnings
See gh-6976
8 years ago
Andy Wilkinson 08842c1273 Suppress Neo4J-related deprecation warnings
See gh-6976
8 years ago
Andy Wilkinson 0cdbbd49b5 Address warnings caused by deprecations in Spring Framework 5
See gh-6977
8 years ago
Andy Wilkinson 16a0f72df5 Merge branch '1.5.x' 8 years ago
Andy Wilkinson c108da9d53 Upgrade to Spring Data Ingalls M1
Closes gh-6785
Closes gh-5835
8 years ago
Stephane Nicoll 9bc77254a7 Start building against Spring Framework 5 snapshot
This commit enables compatibility build against Spring Framework 5.

The Velocity and Guava support that are deprecated in the 1.x line have
been removed and few other classes contain minor change to comply to non
backward compatible changes in Spring Framework 5.

This commit also switches the required java version to 8.

Closes gh-6977
8 years ago
Stephane Nicoll 6643ec3713 Next development version 8 years ago
Stephane Nicoll bd7c20eb1c Deprecate Guava support 8 years ago
Stephane Nicoll ce1e41dce3 Remove deprecated code
This code removes code deprecated in 1.4 with the exception of code that
requires an update to Spring Framework 5.

Closes gh-6971
8 years ago
Stephane Nicoll 6bd670edbc Initiate 1.4.x branch 8 years ago
Spring Buildmaster 7e9ed5e1a7 Next Development Version 8 years ago
Phillip Webb 51092af739 Polish 8 years ago
Eddú Meléndez bc55b6e0d4 Add contextPath LocalHostUriTemplateHandler URIs
Update `LocalHostUriTemplateHandler` so that the `server.context-path`
property is also considered when building the URL.

Fixes gh-6904
Closes gh-6919
8 years ago
Phillip Webb 0eab3e0c5a Drop printed link to reference documentation
Tweak the fix from 50c68a49 to no longer print a link the reference
documentation.

See gh-6593
8 years ago
Phillip Webb 825dd0a26c Merge branch '1.3.x' 8 years ago
Phillip Webb b97e0bd471 Allow HttpPutFormContentFilter to be disabled
Add `spring.mvc.formcontent.putfilter.enabled` property to allow the
HttpPutFormContentFilter to be disabled.

Fixes gh-6519
8 years ago
Phillip Webb a2e4127d4f Fix multi-annotation nested condition logic
Update `AbstractNestedCondition` to correctly group nested conditions
on members.

Fixes gh-6672
8 years ago
Stephane Nicoll 50c68a497b Improve startup error message
This commit improves the startup error message so that it does not
reference  `--debug` anymore. Such command-line switch only works when
the application is started using `java -jar`.

The error message now refers directly to a section of the documentation
that provides more details and links to more useful examples.

Closes gh-6593
8 years ago
Stephane Nicoll 78bb04f2c1 Polish 8 years ago
Stephane Nicoll 284988f0cd Clarify SpringBootWebSecurityConfiguration scope
This commit fixes the documentation that wrongly states that
SpringBootWebSecurityConfiguration is an auto-configuration. Rather than
excluding this class, we should exclude SecurityAutoConfiguration that
imports it.

Closes gh-6861
8 years ago