Commit Graph

2875 Commits

Author SHA1 Message Date
Phillip Webb 14c6243637 Refactor PublicMetrics registration
Rework flexible PublicMetrics registration introduced in 2be6b3e4 to
restore compatibility with v1.1 VanillaPublicMetrics. The new
MetricReaderPublicMetrics class now exposes metrics from a MetricReader
and VanillaPublicMetrics is deprecated. The MetricsEndpoint can now
exposes a collection of PublicMetric interface directly.

See gh-1094
2014-07-29 12:31:40 -07:00
Phillip Webb 8e0b3dd00a Rename some ConditionalOnProperty attributes
Rename the newly introduced @ConditionalOnProperty `match` and
`defaultMatch` attributes to `havingValue` and `matchIfMissing`.

Also added a new `name` attribute as an alternative to `value` to
aid readability.

Closes gh-1000
2014-07-29 09:13:58 -07:00
Phillip Webb 6825a7b42e Polish 2014-07-29 09:12:47 -07:00
Oliver Gierke 81cd11b4ec Improved detection of manual Spring Data repository configuration
The presense of store-specific RepositoryConfigurationExtension beans
is used to disable auto-configuration for JPA, Mongo, and Solr

Closes #1267
2014-07-29 15:56:26 +01:00
Andy Wilkinson 636cc5424f Merge branch '1.1.x' 2014-07-29 15:50:27 +01:00
Andy Wilkinson b7299708f8 Upgrade to Spring HATEOAS 0.16.0
Closes #1307
2014-07-29 15:50:09 +01:00
Andy Wilkinson 3639fe2441 Merge branch '1.1.x' 2014-07-29 15:38:05 +01:00
Andy Wilkinson b69a5dab80 Upgrade to Spring Data Dijkstra SR3
Closes #1305
2014-07-29 15:37:50 +01:00
Andy Wilkinson 2abf3ebdc3 Merge branch '1.1.x' 2014-07-29 15:12:11 +01:00
Andy Wilkinson 333bc3e842 Avoid RS.getObject(index, Object.class) as it breaks MySQL on Java 7
Previously, when running on Java 7+, the JDBC query driven by
DataSourceHealthIndicator resulted in a call to
ResultSet.getObject(index, Object.class). When using MySQL's JDBC
driver this failed with an SQLException with the message "Conversion
not supported for type java.lang.Object". The problem does not occur
on Java 6 as the overload of getObject that takes a type does not
exist; ResultSet.getObject(index) is called instead and MySQL happily
returns whatever type it deems to be appropriate for the column.

This commit updates DataSourceHealthIndicator so that
ResultSet.getObject(index) will always be used, irrespective of the
version of Java that Boot is running on.

Closes #1306
2014-07-29 15:11:53 +01:00
Andy Wilkinson 6c718c24d8 Merge branch '1.1.x' 2014-07-29 11:39:53 +01:00
Andy Wilkinson 86d47f62db Upgrade to Groovy 2.3.6
Closes #1304
2014-07-29 11:24:42 +01:00
Max Bruchmann ee40fb8cf1 Add auto-configuration for Thymeleaf data dialect
Closes #1120
2014-07-29 11:12:02 +01:00
Phillip Webb 53d24301d1 Merge branch '1.1.x' 2014-07-28 15:41:42 -07:00
Phillip Webb f8bf0e2031 Polish 2014-07-28 15:40:40 -07:00
Phillip Webb 5e1552b718 Retain default order in HttpMessageConverters
The original fix for gh-1293 (commit 05e6af23) caused test failures due
to the fact that Spring Boot's MappingJackson2HttpMessageConverter was
added before Spring's default StringHttpMessageConverter.

This commit changes the HttpMessageConverters logic so that additional
converts are added just before any default converter of the same type.
This allows additional converters to be added whilst still retaining
the sensible ordering of the default converters.

Fixes gh-1293
2014-07-28 15:40:33 -07:00
Dave Syer 5ce4669055 Merge branch '1.1.x' 2014-07-28 09:32:58 -07:00
Dave Syer 05e6af23cf Prepend without replacing in HttpMessageConverters
It was incorrect to simply replace existing instances because you can't
tell from the instance which media types and java types it supports. This
fix just prepends the custom converters so they get higher priority.

Fixes gh-1293
2014-07-28 09:32:15 -07:00
Dave Syer 702253bc08 Update git properties plugin 2014-07-28 09:32:15 -07:00
Andy Wilkinson ba2c38c803 Merge branch '1.1.x' 2014-07-28 15:42:02 +01:00
Andy Wilkinson 32a19f590d Enable test that relies on class and groovy script configuration
Since Spring 4.0.4, it's now possible to use both classes and
locations to provide a test's configuration.

Closes #1300
2014-07-28 15:39:45 +01:00
Andy Wilkinson 29b388e6a9 Merge branch '1.1.x' 2014-07-28 15:33:54 +01:00
Andy Wilkinson cba50b8ee7 Upgrade to Groovy 2.3.5
Closes #1299
2014-07-28 15:32:44 +01:00
Andy Wilkinson 8583317651 Merge branch '1.1.x' 2014-07-28 14:56:32 +01:00
Andy Wilkinson bd577f1515 Rework Jetty startup so connectors are only started once
Previously the server was started to make the ServletContext
available, then, to prevent requests from being handled before the
application context had been started, the connectors were stopped.
Once application context startup had completed, the connectors were
then started again. In addition to being somewhat inefficient, this
caused problems on FreeBSD where stopping the connector didn't free
up the port quickly enough for the subsequent start to then be able
to bind to it.

This commit updates the Jetty startup logic to be closer to the logic
that's used for Tomcat. Before the server is started, the configured
connectors are cached and then removed. The server is then started
without any connectors. Once application context startup has
completed, the connectors are reinstated and started.

Fixes #968
2014-07-28 14:38:11 +01:00
Dave Syer 13c94172b0 Merge branch '1.1.x' 2014-07-25 08:46:09 -07:00
Dave Syer 8c15b13fda Change private method name 2014-07-25 08:45:40 -07:00
Dave Syer cc51296397 Merge branch '1.1.x' 2014-07-25 08:35:56 -07:00
Dave Syer 32ede50d19 Extract property sources from composite when binding
Often this change will not be important because you are binding to
a bean with strongly typed properties. A bean with a Map property,
on the other hand, won't oytherwise be able to reason about the
permitted keys so it will miss any non-enumerable property sources,
including composites whose nested sources are themselves enumerable.

Fixed gh-1294
2014-07-25 08:34:30 -07:00
Andy Wilkinson f97251b9cf Merge branch '1.1.x' 2014-07-24 20:38:41 +01:00
Andy Wilkinson f5c8a8879a Isolate CLI integration tests from any settings decryption failures 2014-07-24 20:38:21 +01:00
Andy Wilkinson 3c99bbf524 Merge branch '1.1.x' 2014-07-24 18:02:34 +01:00
Andy Wilkinson 7bb1f7eb77 Polishing: use passed-in ssl instance rather than calling getSsl() 2014-07-24 17:59:24 +01:00
Andy Wilkinson 4d4cc076c6 Don't fail hard when settings.xml can't be decrypted by the CLI 2014-07-24 17:54:09 +01:00
Andy Wilkinson 0960908bd7 Add support for configuring SSL declaratively
Both Tomcat and Jetty can now be configured to use SSL via the
environment (typically application.properties or application.yml)

Closes #1084
2014-07-24 15:10:09 +01:00
Christian Dupuis d26ecbef04 Merge branch '1.1.x' 2014-07-24 10:54:49 +02:00
Christian Dupuis 68163a66a5 Change query in MongoHealthIndicator
This commit changes the query in MongoHealthIndicator from serverStatus to buildInfo to avoid unprivileged access and corresponding errors.

fixes #1289
2014-07-24 10:07:36 +02:00
Christian Dupuis 13ee41d04d Change query in MongoHealthIndicator
This commit changes the query in MongoHealthIndicator from serverStatus to buildInfo to avoid unprivileged access and corresponding errors.

fixes #1289
2014-07-24 10:06:40 +02:00
Andy Wilkinson d04f325294 Merge branch '1.1.x' 2014-07-23 15:57:53 +01:00
Andy Wilkinson 7945b29669 Correct the descriptions of two sample projects 2014-07-23 15:57:44 +01:00
Andy Wilkinson cef1ec43a6 Merge branch '1.1.x' 2014-07-23 15:29:07 +01:00
Andy Wilkinson 664319009c Correct the profile name in Travis configuration 2014-07-23 15:28:51 +01:00
Dave Syer d5395bfa83 Merge branch '1.1.x' 2014-07-21 22:28:48 +01:00
Dave Syer ac2ab39a54 Use class name not value to support non-Hibernate JPA vendors
With this change I got a simple Eclipselink version of the data-jpa
sample working. I'll push that when I get time to research it a bit more
(I needed to set up a Java agent so either that might be a problem
for our integration tests if we can't work around it).

Fixes gh-1268.
2014-07-21 22:25:47 +01:00
Christian Dupuis 99b3240ab2 Ensure custom HTTP code mappings for /health don't remove default mappings
Previously any custom http code mapping would remove the default mappings. With this commit the behaviour is changed so that default mappings will stay if a custom mapping is registered. Certainly a default mapping can be overridden.

fixes #1264
2014-07-21 17:06:41 +02:00
ddebree 5e02ee6974 Add java options for Heroku Procfile
Added $JAVA_OPTS variable to the sample Heroku Procfile.
If this is left out it can cause memory issues when the app starts.

Fixes gh-1266
2014-07-21 15:32:41 +01:00
Stephane Nicoll 16c2477da2 Documentation update
This commit fixes some inconsistent or outdated keys in the
documentation. More specifically:

* allowSessionOverride is no longer a template parameter
* templateEncoding has been renamed to charSet
* Groovy templates do not have the same configuration hierarchy, hence
  they don't share all settings
* spring.data.elasticsearch.local does not seem to exist
* flyway prefix and suffix should be sqlMigrationPrefix and suffix
* spring.rabbitmq.virtualHost had a typo
* endpoints.error.path is not a valid property
* shell.command-path-patterns had a typo
* spring.datasource.max-wait had a typo

Fixes gh-1226
2014-07-21 15:31:30 +01:00
Christian Dupuis 977c5a988c Ensure custom HTTP code mappings for /health don't remove default mappings
Previously any custom http code mapping would remove the default mappings. With this commit the behaviour is changed so that default mappings will stay if a custom mapping is registered. Certainly a default mapping can be overridden.

fixes #1264
2014-07-21 16:11:47 +02:00
Dave Syer 300e570f68 Reverse priority of property sources when extracting sub properties
Fixes gh-1259
2014-07-21 15:09:23 +01:00
Dave Syer a9b8563bb6 Fix typo (fixes gh-1273) 2014-07-21 14:07:29 +01:00