Commit Graph

15846 Commits

Author SHA1 Message Date
Brian Clozel 72afdc676d Reorder WebMvcConfigurer from auto-configuration
Prior to this commit, all `WebMvcConfigurer` instances provided by user
configuration were processed *before* the one provided by the
`WebMvcAutoConfiguration`.

For many options this has no consequence, but for some, like the
`ContentNegotiationConfigurer`, settings were overriden by the
auto-configuration even if developers provided an opinion.

This commit orders the `WebMvcConfigurer` provided by the
auto-configuration at `0`, so that custom configurers (unordered, at
`Ordered.LOWEST_PRECEDENCE`) are processed *after*.

This still gives room to developers for configuring things *before* the
auto-configuration - they can still order their own configuration
accordingly.

Fixes gh-12389
2018-03-07 17:50:41 +01:00
Stephane Nicoll 9b1003d9f6 Properly identify accessor methods
This commit fixes the binder so that it property identifies JavaBean
accessors. Previously an accessor named `get` or `is` was identified.
Similarly, a setter named `set` was identified.

Closes gh-12363
2018-03-07 15:14:07 +01:00
Stephane Nicoll 36ed7ae699 Polish 2018-03-07 14:23:49 +01:00
Stephane Nicoll 3804466ad5 Fix description of JDBC starter
Closes gh-12387
2018-03-07 14:17:14 +01:00
Andy Wilkinson bf84215b90 Merge branch '1.5.x' 2018-03-07 13:14:40 +00:00
Stephane Nicoll 1b36ab5be0 Fix wrong import 2018-03-07 14:10:49 +01:00
Stephane Nicoll 0207b816d9 Attempt to detect ddl-auto mode only if necessary
This commit defers the resolution of the default ddl auto mode only when
it is absolutely necessary. This prevents Spring Boot to attempt to get
a connection when it isn't necessary

Closes gh-12374
2018-03-07 13:06:01 +01:00
Andy Wilkinson 51301dfc91 Upgrade to Spring Social 1.1.6.RELEASE
Closes gh-12386
2018-03-07 11:59:43 +00:00
Andy Wilkinson 08fe332a3f Upgrade to Groovy 2.4.14
Closes gh-12385
2018-03-07 11:59:42 +00:00
Andy Wilkinson 8849dbe5df Upgrade to Undertow 1.4.23.Final
Closes gh-12384
2018-03-07 11:59:42 +00:00
Andy Wilkinson 5b48f16494 Upgrade to Appengine Sdk 1.9.63
Closes gh-12383
2018-03-07 11:59:41 +00:00
Andy Wilkinson 101ed76559 Upgrade to Jackson 2.8.11.20180217
Closes gh-11475
2018-03-07 11:56:39 +00:00
Andy Wilkinson 317b51f2ad Make ApplicationContextRequestMatcher and subclasses thread-safe
Previously, when performing lazy initialisation of the context,
ApplicationContextRequestMatcher assigned the context field before it
called initialized. The context being non-null is used as the signal
that it’s ok to call a subclass’s matches method. If one thread checks
for a non-null context in between the field being assigned and
initialized being called on another thread, matches will be called
before the subclass is ready.

This commit closes the window for the race condition by only assigning
the context field once the subclass’s initialized method has been
called.

There is a secondary problem in each of the subclasses. Due to the use
of double-checked locking in ApplicationContextRequestMatcher, it’s
possible for a subclass’s matches method to be called by a thread that
has not synchronised on the context lock that’s held when initialized
is called and the delegate field is assigned. This means that the
value assigned to the field may not be visible to that thread.

This commit declares the delegate field of each
ApplicationContextRequestMatcher subclass as volatile to ensure that,
following initialisation, its value is guaranteed to be visible to
all threads.

Closes gh-12380
2018-03-07 11:37:01 +00:00
Stephane Nicoll 42629cb8ae Add support for ConnectionNameStrategy
This commit detects if a `ConnectionNameStrategy` bean exists in the
context and associates it with the auto-configured RabbitMQ's
`ConnectionFactory` when that is the case.

Closes gh-12367
2018-03-07 11:15:50 +01:00
Stephane Nicoll bc47b715c3 Add a note about the use of `*` with YAML
Closes gh-12361
2018-03-07 10:32:10 +01:00
Stephane Nicoll 96f17da4cd Merge pull request #12365 from jacobis:fix-reference-guide
* pr/12365:
  Remove a redundant trailing slash in doc
2018-03-06 17:43:10 +01:00
seongwoon.lee 762793b812 Remove a redundant trailing slash in doc
Closes gh-12365
2018-03-06 17:42:43 +01:00
Stephane Nicoll 24402aaf02 Merge branch '1.5.x' 2018-03-06 17:42:09 +01:00
Stephane Nicoll f8c1821c2c Polish
See gh-12365
2018-03-06 17:41:49 +01:00
Stephane Nicoll 7a88fe692d Polish Quartz dependency management
Closes gh-12364
2018-03-06 17:00:56 +01:00
Stephane Nicoll 326c1e123c Merge branch '1.5.x' 2018-03-06 15:26:47 +01:00
Stephane Nicoll 66d1f5cd0b Fix expansion of static-locations array
This commit fixes a NPE when the static-locations array of
`ResourceProperties` has to be expanded as the setter is cleaning the
values of the array and is affected by a non-intuitive behaviour of the
binder.

When the binder needs to set an element of an array and the size of the
array isn't large enough, the binder proceeds as follows:

* An array of the required size is created
* The content of the original array is copied over
* The setter of the property is invoked with the new array
* The setter of the property is invoked and the returned array is
mutated to set the requested value

While one would expect the array to contain the requested value when the
setter is invoked, this is not the case. Also, the array might contain
null values if a value at index 8 should be set and the array has a size
of 3.

All in all, `ResourceProperties#appendSlashIfNecessary` has to account
for `null` and an additional round of cleaning has to happen once
binding has completed.

Closes gh-12360
2018-03-06 15:19:59 +01:00
Stephane Nicoll 6f7501f62b Remove my clone 2018-03-06 10:21:00 +01:00
Madhura Bhave e6eca04af2 Make EndpointRequestMatcher#excluding public
Fixes gh-12354
2018-03-05 16:07:46 -08:00
Madhura Bhave 44c48ec5a8 Merge pull request #12350 from inaba jun 2018-03-05 13:22:42 -08:00
Madhura Bhave 4ca1e6ae4e Polish "Fix typo in TestDatabaseAutoConfiguration"
Closes gh-12350
2018-03-05 13:13:07 -08:00
inabajunmr ddd8598e2e Fix typo in TestDatabaseAutoConfiguration failure msg
See gh-12350
2018-03-05 13:10:46 -08:00
Madhura Bhave b6e09e8311 Merge branch '1.5.x' 2018-03-05 12:54:01 -08:00
Madhura Bhave 758dca57f1 Clarify documentation for setting the LoggingSystem
Closes gh-12299
2018-03-05 12:45:15 -08:00
Andy Wilkinson d00d1da27a Upgrade to Maven Javadoc Plugin 3.0.0
Closes gh-12345
2018-03-05 12:45:17 +00:00
Andy Wilkinson c588091bab Merge branch '1.5.x' 2018-03-05 12:42:41 +00:00
Andy Wilkinson 84387046b9 Start building against Spring Framework 4.3.15 snapshots
See gh-12344
2018-03-05 12:42:14 +00:00
Andy Wilkinson cf2577d7da Merge pull request #12342 from Cristian Greco
* gh-12342:
  Fix link to Spring Data JPA in docs
2018-03-05 12:34:32 +00:00
Cristian Greco b552842b9d Fix link to Spring Data JPA in docs
Closes gh-12342
2018-03-05 12:33:26 +00:00
Andy Wilkinson f918e0eb6a Merge branch '1.5.x' 2018-03-05 11:55:18 +00:00
Andy Wilkinson eee891dbc8 Decode file: URLs passed into PropertiesLauncher via loader.path
Closes gh-12325
2018-03-05 11:52:25 +00:00
Andy Wilkinson 85900796d3 Remove stale tip about ManagementContextConfiguration for endpoints
Closes gh-12312
2018-03-05 11:19:10 +00:00
Andy Wilkinson 2c882a47d0 Merge pull request #12324 from Jon Schneider
* gh-12324:
  Polish "Improve docs on custom metrics"
  Improve docs on custom metrics
2018-03-05 10:55:00 +00:00
Andy Wilkinson d7499387d8 Polish "Improve docs on custom metrics"
Closes gh-12324
2018-03-05 10:54:19 +00:00
Jon Schneider 25ff82f1d7 Improve docs on custom metrics
See gh-12324
2018-03-05 10:53:55 +00:00
Andy Wilkinson ff5dd747f9 Merge pull request #12337 from Christoph Dreis
* gh-12337:
  Remove workaround for JDK-8023130 in RunProcess
2018-03-05 10:40:12 +00:00
dreis2211 3adced9962 Remove workaround for JDK-8023130 in RunProcess
With JDK 8 being the baseline and JDK 7 not being supported anymore we
can get rid of the workaround for a JDK 7 bug in
ProcessBuilder.inheritIO on Windows machines.

Closes gh-12337
2018-03-05 10:39:28 +00:00
Andy Wilkinson 9882d87e1b Start building against Spring Framework 5.0.5 snapshots
See gh-12340
2018-03-05 09:34:41 +00:00
Stephane Nicoll 6533278191 Update reference guide to stop mentioning setWebEnvironment
Closes gh-12330
2018-03-04 09:50:40 +01:00
Andy Wilkinson 82c95e136f Avoid problems with Failsafe when building samples with JDK 10
See gh-12028
2018-03-03 19:16:59 +00:00
Andy Wilkinson 065456a4af Make JAX-B available to Jersey sample when building with JDK 10
See gh-12028
2018-03-03 17:52:41 +00:00
Andy Wilkinson 1bd0313c3d Avoid problems with Surefire when building samples with JDK 10
See gh-12028
2018-03-03 17:52:41 +00:00
Andy Wilkinson 1f5143de70 Avoid problems with Failsafe when building with JDK 10
See gh-12028
2018-03-03 17:52:41 +00:00
Andy Wilkinson d30c1fd9f8 Make javadoc plugin use Java 10-compatible version of Commons Lang 3
See gh-12028
2018-03-03 17:52:41 +00:00
Andy Wilkinson 4aa947c227 Use a Java 10-compatibile version of Maven’s site plugin
See gh-12028
2018-03-03 17:52:41 +00:00