Commit Graph

4216 Commits

Author SHA1 Message Date
Andy Wilkinson 0c7708bf9f Update MetricFilter to treat an unsuccessful call to doFilter as a 500
Previously, if a call to doFilter in MetricFilter failed (i.e. it threw
an exception), it would be handled as if it had a response status of
200. This is because the servlet container was yet to handle the
exception and set the response status to 500.

This commit updates MetricFilter to assume that an exception thrown from
doFilter will result in a response with a status of 500. Strictly
speaking, even though the filter has highest precedence and will
therefore run last on the way back out, this may not always be the case.
For example, a custom Tomcat Valve could handle the exception and result
in a 200 response but that’s an edge case that’s into shooting yourself
in the foot territory.

Closes gh-2818
2015-04-14 12:24:32 +01:00
Andy Wilkinson 4f988d2aec Polish log message in AutoConfigurationReportLoggingInitializer 2015-04-14 10:19:59 +01:00
Andy Wilkinson 2d7c0c2f00 Provide dependency management for Antlr 2
Hibernate depends on antlr:antlr:2.7.7 (the latest version on Antlr 2)
and fails with earlier 2.7.x versions due to a missing method. This
can cause problems for Maven users if they also depend on something that
pulls in an earlier version of Antlr, such as
spring-boot-starter-velocity. Gradle users are unaffected as, when
multiple versions of a dependency are found in the graph, Gradle will
choose the latest version.

This commit adds dependency management for antlr:antlr:2.7.7 to ensure
that the latest, and Hibernate compatible, version of Antlr 2 is used.

Closes gh-2814
2015-04-14 09:49:08 +01:00
Stephane Nicoll 0f14210937 Polish documentation 2015-04-14 09:51:14 +02:00
Phillip Webb dd19dd70c5 Update relaxed binding documentation sample
Include getters and setters with the sample class.

Fixes gh-2813
2015-04-13 11:38:42 -07:00
Stephane Nicoll 08959286e2 Fix "keys-to-sanitize" property doc 2015-04-13 12:28:34 +02:00
Phillip Webb e94de70358 Polish 2015-04-09 10:42:53 -07:00
Dave Syer 8cdff1cf70 Fix bug in trace repository
When reverse==false we have to be careful to remove the right element
when capacity is reached.
2015-04-09 13:11:59 +01:00
Dave Syer 8ef21b31ad Add flag to TraceRepository to reverse order of listing
Default to true (so existing apps change their behaviour, but that
seems to be the majority vote).

Fixes gh-2794
2015-04-09 12:04:19 +01:00
izeye b45bb6d082 Make all of GsonHttpMessageConvertersConfiguration conditional on Gson
Previously GsonHttpMessageConvertersConfiguration was unconditional
with its nested configuration class being
@ConditionalOnClass(Gson.class). This led to the unnecessary
registration of the GsonHttpMessageConvertersConfiguration bean when
Gson isn't on the classpath.

This commit moves the condition up onto the outer class so that no
Gson-related beans are created when Gson is not on the classpath.

Closes gh-2778
2015-04-08 15:56:39 +01:00
Andy Wilkinson 5547f91bfb Correct name of check-template-location property in error message
Closes gh-2788
2015-04-08 15:48:54 +01:00
Andy Wilkinson 0141f50ec8 Wait for stream reading threads to finish when awaiting CLI invocation
Closes gh-2787 (I hope)
2015-04-08 15:15:09 +01:00
Andy Wilkinson 83f842a226 Reinstate support for relaxed binding for endpoint enablement
This commit improves upon the changes made in a8bf9d3 by adding
support for relaxed binding of the endpoints.enabled and
endpoints.<name>.enabled properties. This is achieved by replacing
use of @ConditionalOnExpression (which does not support relaxed
binding) with a custom condition implementation that uses
RelaxedPropertyResolver.

Closes gh-2767
2015-04-08 11:29:41 +01:00
izeye d8f45ab6ca Document MultipartProperties
Closes gh-2779
2015-04-07 17:49:15 +01:00
Andy Wilkinson fa4562f408 Polishing: spaces -> tabs 2015-04-07 17:48:40 +01:00
Andy Wilkinson a8bf9d34d5 Honour endpoint.enabled:false for nested paths
Previously, only invocations of /metricName/ would honour the enabled
property and return a not found (404) response. For endpoints which
support nested paths, access to /metricName/foo would ignore the enabled
flag and return an OK (200) response. Furthermore, there was a comment
in EndpointMvcAdapter that suggested that an endpoint shouldn’t be
called when it is disabled, however this was not the case.

This commit updates EndpointWebMvcAutoConfiguration and
JolokiaAutoConfiguration to only register their MvcEndpoint beans if
the underlying endpoint is enabled. This means that an
EndpointMvcAdapter should not be called if its delegate is disabled,
making the comment described above accurate.

The check for the delegate being enabled has been retained so as not to
rely upon the auto-configurations’ behaviour. The methods which handle
nested paths (MetricsMvcEndpoint.value() and
EnvironmentMvcEndpoint.value()) have been updated to add the same check
for the enablement of their delegate.

Fixes gh-2767
2015-04-07 17:43:02 +01:00
Andy Wilkinson d4ffab2f02 Provide additional config metadata for spring.http.gzip.enabled
See gh-2776
2015-04-07 11:40:05 +01:00
Andy Wilkinson 212520fa15 Add a property to disable auto-configuration of GzipFilter
Closes gh-2776
2015-04-07 11:24:24 +01:00
Andy Wilkinson c8c2eea03e Upgrade to Spring Integration 4.1.3.RELEASE
Closes gh-2782
2015-04-07 11:04:22 +01:00
Andy Wilkinson 23da4ab95d Update to Spring AMQP 1.4.4.RELEASE
Closes gh-2781
2015-04-07 11:03:46 +01:00
Andy Wilkinson ddeebf2262 Update to Tomcat 8.0.21
Closes gh-2775
2015-04-07 11:01:19 +01:00
Stephane Nicoll adaf175273 Clarified the naming scheme for starters
Initial update to the documentation to mention how a 3rd party starter
should be named. The current doc sends a completely inconsistent message
to what we actually intend.

See gh-2537
2015-04-03 10:24:11 +02:00
Phillip Webb fa0a2f39c5 Merge branch '1.1.x' into 1.2.x
Conflicts:
	pom.xml
	spring-boot-actuator/pom.xml
	spring-boot-autoconfigure/pom.xml
	spring-boot-cli/pom.xml
	spring-boot-dependencies/pom.xml
	spring-boot-docs/pom.xml
	spring-boot-full-build/pom.xml
	spring-boot-integration-tests/pom.xml
	spring-boot-integration-tests/spring-boot-gradle-tests/pom.xml
	spring-boot-integration-tests/spring-boot-security-tests/pom.xml
	spring-boot-integration-tests/spring-boot-security-tests/spring-boot-security-tests-web-helloworld/pom.xml
	spring-boot-parent/pom.xml
	spring-boot-samples/pom.xml
	spring-boot-samples/spring-boot-sample-actuator-log4j/pom.xml
	spring-boot-samples/spring-boot-sample-actuator-noweb/pom.xml
	spring-boot-samples/spring-boot-sample-actuator-ui/pom.xml
	spring-boot-samples/spring-boot-sample-actuator/build.gradle
	spring-boot-samples/spring-boot-sample-actuator/build.xml
	spring-boot-samples/spring-boot-sample-actuator/pom.xml
	spring-boot-samples/spring-boot-sample-amqp/pom.xml
	spring-boot-samples/spring-boot-sample-aop/pom.xml
	spring-boot-samples/spring-boot-sample-batch/pom.xml
	spring-boot-samples/spring-boot-sample-data-elasticsearch/pom.xml
	spring-boot-samples/spring-boot-sample-data-gemfire/pom.xml
	spring-boot-samples/spring-boot-sample-data-jpa/pom.xml
	spring-boot-samples/spring-boot-sample-data-mongodb/pom.xml
	spring-boot-samples/spring-boot-sample-data-redis/pom.xml
	spring-boot-samples/spring-boot-sample-data-rest/pom.xml
	spring-boot-samples/spring-boot-sample-data-solr/pom.xml
	spring-boot-samples/spring-boot-sample-flyway/pom.xml
	spring-boot-samples/spring-boot-sample-hateoas/pom.xml
	spring-boot-samples/spring-boot-sample-hornetq/pom.xml
	spring-boot-samples/spring-boot-sample-integration/pom.xml
	spring-boot-samples/spring-boot-sample-jetty/pom.xml
	spring-boot-samples/spring-boot-sample-liquibase/pom.xml
	spring-boot-samples/spring-boot-sample-parent-context/pom.xml
	spring-boot-samples/spring-boot-sample-profile/build.gradle
	spring-boot-samples/spring-boot-sample-profile/pom.xml
	spring-boot-samples/spring-boot-sample-secure/pom.xml
	spring-boot-samples/spring-boot-sample-servlet/pom.xml
	spring-boot-samples/spring-boot-sample-simple/build.gradle
	spring-boot-samples/spring-boot-sample-simple/pom.xml
	spring-boot-samples/spring-boot-sample-tomcat-jsp/pom.xml
	spring-boot-samples/spring-boot-sample-tomcat-multi-connectors/pom.xml
	spring-boot-samples/spring-boot-sample-tomcat-ssl/pom.xml
	spring-boot-samples/spring-boot-sample-tomcat/pom.xml
	spring-boot-samples/spring-boot-sample-traditional/pom.xml
	spring-boot-samples/spring-boot-sample-velocity/pom.xml
	spring-boot-samples/spring-boot-sample-web-freemarker/pom.xml
	spring-boot-samples/spring-boot-sample-web-groovy-templates/pom.xml
	spring-boot-samples/spring-boot-sample-web-jsp/pom.xml
	spring-boot-samples/spring-boot-sample-web-method-security/pom.xml
	spring-boot-samples/spring-boot-sample-web-secure-custom/pom.xml
	spring-boot-samples/spring-boot-sample-web-secure-jdbc/pom.xml
	spring-boot-samples/spring-boot-sample-web-secure/pom.xml
	spring-boot-samples/spring-boot-sample-web-static/build.gradle
	spring-boot-samples/spring-boot-sample-web-static/pom.xml
	spring-boot-samples/spring-boot-sample-web-ui/build.gradle
	spring-boot-samples/spring-boot-sample-web-ui/pom.xml
	spring-boot-samples/spring-boot-sample-web-velocity/pom.xml
	spring-boot-samples/spring-boot-sample-websocket-tomcat/pom.xml
	spring-boot-samples/spring-boot-sample-ws/pom.xml
	spring-boot-samples/spring-boot-sample-xml/pom.xml
	spring-boot-starters/pom.xml
	spring-boot-starters/spring-boot-starter-actuator/pom.xml
	spring-boot-starters/spring-boot-starter-amqp/pom.xml
	spring-boot-starters/spring-boot-starter-aop/pom.xml
	spring-boot-starters/spring-boot-starter-batch/pom.xml
	spring-boot-starters/spring-boot-starter-data-elasticsearch/pom.xml
	spring-boot-starters/spring-boot-starter-data-gemfire/pom.xml
	spring-boot-starters/spring-boot-starter-data-jpa/pom.xml
	spring-boot-starters/spring-boot-starter-data-mongodb/pom.xml
	spring-boot-starters/spring-boot-starter-data-rest/pom.xml
	spring-boot-starters/spring-boot-starter-data-solr/pom.xml
	spring-boot-starters/spring-boot-starter-freemarker/pom.xml
	spring-boot-starters/spring-boot-starter-groovy-templates/pom.xml
	spring-boot-starters/spring-boot-starter-hornetq/pom.xml
	spring-boot-starters/spring-boot-starter-integration/pom.xml
	spring-boot-starters/spring-boot-starter-jdbc/pom.xml
	spring-boot-starters/spring-boot-starter-jetty/pom.xml
	spring-boot-starters/spring-boot-starter-log4j/pom.xml
	spring-boot-starters/spring-boot-starter-logging/pom.xml
	spring-boot-starters/spring-boot-starter-mobile/pom.xml
	spring-boot-starters/spring-boot-starter-parent/pom.xml
	spring-boot-starters/spring-boot-starter-redis/pom.xml
	spring-boot-starters/spring-boot-starter-remote-shell/pom.xml
	spring-boot-starters/spring-boot-starter-security/pom.xml
	spring-boot-starters/spring-boot-starter-social-facebook/pom.xml
	spring-boot-starters/spring-boot-starter-social-linkedin/pom.xml
	spring-boot-starters/spring-boot-starter-social-twitter/pom.xml
	spring-boot-starters/spring-boot-starter-test/pom.xml
	spring-boot-starters/spring-boot-starter-thymeleaf/pom.xml
	spring-boot-starters/spring-boot-starter-tomcat/pom.xml
	spring-boot-starters/spring-boot-starter-velocity/pom.xml
	spring-boot-starters/spring-boot-starter-web/pom.xml
	spring-boot-starters/spring-boot-starter-websocket/pom.xml
	spring-boot-starters/spring-boot-starter-ws/pom.xml
	spring-boot-starters/spring-boot-starter/pom.xml
	spring-boot-tools/pom.xml
	spring-boot-tools/spring-boot-dependency-tools/pom.xml
	spring-boot-tools/spring-boot-gradle-plugin/pom.xml
	spring-boot-tools/spring-boot-loader-tools/pom.xml
	spring-boot-tools/spring-boot-loader/pom.xml
	spring-boot-tools/spring-boot-maven-plugin/pom.xml
	spring-boot-versions/pom.xml
	spring-boot/pom.xml
2015-03-30 23:25:53 -07:00
Phillip Webb 42e69359a8 Fixup version numbers following release 2015-03-30 23:25:03 -07:00
Phillip Webb 4b7c62008f Fixup version numbers following release 2015-03-30 23:24:19 -07:00
Spring Buildmaster e03c11dda8 Next development version 2015-03-30 22:56:20 -07:00
Phillip Webb cddf54e576 Revert "Upgrade to H2 1.4.186"
This reverts commit 3a22443fbb.
2015-03-30 22:01:01 -07:00
Spring Buildmaster b8d2a55b30 Next development version 2015-03-30 18:23:16 -07:00
Phillip Webb 495a79c324 Document logging properties with @PropertySource
Add a note to the logging documentation to point out a potential gotcha.

Fixes gh-2709
2015-03-30 16:59:33 -07:00
Dave Syer 18afe8bd0c Fixup incorrect property name
The property in XADataSourceAutoConfigurationTests should be
`data-source-class-name`. Previously the `-name` was missing.
2015-03-30 16:45:02 -07:00
Dave Syer b3d8e32ccf Fix overlapping property name binding to Maps
Update RelaxedDataBinder so that multiple overlapping nested property
names can be bound to a Map.

Prior to this commit, properties of the following form could not be
bound to Maps:

  foo: baz
  foo.bar: spam

This was due to BeanWrapperImpl throwing an InvalidPropertyException
when binding `map[foo][bar]` because `foo` is already bound to `baz`.

The updated code now detects such cases and instead uses the binding
property `map[foo.bar]`.

Fixes gh-2610
2015-03-30 16:44:00 -07:00
Phillip Webb e3f203a8a5 Polish 2015-03-30 10:22:54 -07:00
Phillip Webb 441beee2fa Merge branch '1.1.x' into 1.2.x 2015-03-30 10:07:26 -07:00
Marcin Zajączkowski cbf82c4793 Fix typo in gradle plugin documentation
(cherry-picked from commit 99f1c7b)
2015-03-30 10:06:39 -07:00
Andy Wilkinson 0b61457d40 Merge branch '1.1.x' into 1.2.x 2015-03-30 13:31:51 +01:00
Andy Wilkinson 617b859842 Reinstate chapter titles in the PDF version of the reference guide
Closes gh-2723
2015-03-30 13:31:09 +01:00
Andy Wilkinson c3571d416a Improve YAML-based configuration of Tomcat compression
Tomcat uses the strings “on” and “off” to enable and disable
compression. YAML interprets on as true and off as false, leaving
ServerProperties.Tomcat.compression configured with “true” and “false”
respectively. One solution is to use “on” rather than on and “off”
rather than off in the YAML file but users may not realise that they
need to do so.

This commit updates the connector customiser that configures compression
to map “true” to “on” and “false” to “off”.

Closes gh-2737
2015-03-30 10:56:07 +01:00
Andy Wilkinson 527850ae55 Align default context path expectation with Undertow 1.1.3's behaviour
When configured with a context path of "", Undertow 1.1.3 changes the
context path to be "/". The change [1] was made to fix UNDERTOW-350
[2].

[1] 3db7707b8b
[2] https://issues.jboss.org/browse/UNDERTOW-350

See gh-2732
2015-03-26 18:53:28 +00:00
Andy Wilkinson 0da24f82e3 Polishing: move tests for mustache.web into the correct package 2015-03-26 18:02:43 +00:00
Andy Wilkinson dd748eda19 Use the configured charset, if any, in MustacheViewResolver
Closes gh-2670
2015-03-26 18:02:37 +00:00
Andy Wilkinson 2cf23e08a0 Upgrade to Undertow 1.1.3.Final
Closes gh-2732
2015-03-26 17:18:51 +00:00
Andy Wilkinson 3a22443fbb Upgrade to H2 1.4.186
Closes gh-2730
2015-03-26 17:18:30 +00:00
Andy Wilkinson 17f03641de Upgrade to Dropwizard Metrics 3.1.1
Closes gh-2731
2015-03-26 17:18:05 +00:00
Andy Wilkinson 9285c9fd77 Merge branch '1.1.x' into 1.2.x
Conflicts:
	spring-boot-dependencies/pom.xml
2015-03-26 17:10:04 +00:00
Andy Wilkinson fe837c0cea Upgrade to Reactor 1.1.6.RELEASE
gh-2735
2015-03-26 17:07:19 +00:00
Andy Wilkinson de28ed4aa1 Upgrade to Groovy 2.3.11
Closes gh-2733
2015-03-26 17:04:26 +00:00
Andy Wilkinson adbd340c91 Upgrade to Logback 1.1.3
Closes gh-2729
2015-03-26 17:03:52 +00:00
Andy Wilkinson 887a7cce1e Upgrade to SLF4J 1.7.11
Closes gh-2734
2015-03-26 17:03:23 +00:00
Andy Wilkinson d428afb45f Merge branch '1.1.x' into 1.2.x
Conflicts:
	spring-boot-dependencies/pom.xml
2015-03-26 16:32:05 +00:00
Andy Wilkinson 936e1c2152 Update to Spring Security 3.2.7.RELEASE
Closes gh-2726
2015-03-26 16:31:13 +00:00