Commit Graph

439 Commits

Author SHA1 Message Date
Andy Wilkinson 8ed472d6f9 Update logging listener to use normal stack trace ordering by default
Previously, LoggingApplicationListener used %rEx as the default
exception conversion word. This would result in the nested causes
being logging in reverse order, i.e. the most deeply nested cause
would be logged first.

This commit updates the default to be %wEx and adds a test to verify
the default behaviour.

Closes gh-4247
2015-10-28 14:07:06 +00:00
Stephane Nicoll fdf75d3ede Document Actuator's CORS support
Closes gh-3010
2015-10-27 11:41:30 +01:00
Johnny Lim e477598cc6 Fix broken links
Closes gh-4272
2015-10-22 17:45:35 +02:00
Stephane Nicoll cc3b7ca6f6 Add missing configuration keys for groovy template 2015-10-20 15:46:09 +02:00
Stephane Nicoll eb2650976f Fix typo 2015-10-20 15:30:07 +02:00
Stephane Nicoll bc0eb996ff Polish contribution
Closes gh-4202
2015-10-20 11:35:35 +02:00
Johnny Lim 330073ed17 Fix broken link
Closes gh-4243
2015-10-20 09:10:27 +02:00
zhanhb 299d0653ed Fix default value of MongoDB port in doc
Closes gh-4212
2015-10-19 15:08:43 +02:00
Phillip Webb 922f8b6ba6 Add `server.session.store-dir` support
Add support for a `server.session.store-dir` property which can be used
to specify where session data source be saved.

Fixes gh-4191
2015-10-14 22:56:01 -07:00
Wallace Wadge e3315d2252 Allow TraceWebFilter to trace more attributes
Update TraceWebFilter to optionally trace more details from the
HttpServletRequest/HttpServletResponse. The `management.trace.include`
property can be used to change what aspects are logged.

Closes gh-3948
2015-10-14 13:25:11 -07:00
Andy Wilkinson 25e719f549 Fix handling of security.headers.* to allow headers to be disabled
Spring Security 4’s default configuration will, irrespective of any
other header writers that are added, enable writers for the following
headers:

 - X-Content-Type
 - X-XSS-Protection
 - Cache-Control
 - X-Frame-Options

Previously, SecurityProperties.headers used false as the default for the
properties that enable or disable these headers but the configuration is
only applied when the properties are true. This left us with the right
default behaviour (the headers are enabled) but meant that the
properties could not be used to switch off the headers.

This commit changes the defaults for the four properties to true and
updates SpringBootWebSecurityConfiguration to only apply the
configuration when the properties are false. This leaves us with the
desired defaults while allowing users to disable one or more of the
properties by setting the relevant property to false.

Closes gh-3517
2015-10-13 15:43:57 +01:00
Stephane Nicoll 422444c3f2 Add throwExceptionIfNoHandlerFound property
Add a property to customize if an exception should be thrown when no
handler was found to process a given request.

Closes gh-4000
2015-10-09 11:40:46 +02:00
Andy Wilkinson 97c8749528 Update configuration metadata for show-banner and banner-mode changes
Closes gh-4001
2015-10-08 16:02:52 +01:00
Andy Wilkinson 36d4246289 Add opt-in support for registering a shutdown hook to shut down logging
This commit adds a new property, logging.register-shutdown-hook, that
when set to true, will cause LoggingApplicationListener to register
a shutdown hook the first time it initializes a logging system. When
the JVM exits, the shutdown hook shuts down each of the supported
logging systems, ensuring that all of their appenders have been
flushed and closed.

Closes gh-4026
2015-10-08 15:53:22 +01:00
Andy Wilkinson 01eb4cf954 Rework breaking API changes
This commit changes the new mode-based configuration to use two new
methods – setBannerMode on SpringApplication and bannerMode on
SpringApplicationBuilder. The old methods, setShowBanner and
showBanner on SpringApplication and SpringApplicationBuilder
respectively, have been reinstated and deprecated.

Closes gh-4001
2015-10-08 14:41:50 +01:00
Stephane Nicoll 19b5e59234 Use spring.velocity.charset for template encoding
Previously `spring.velocity.charset` only controlled the output encoding
with the templates being loaded with the default encoding. We now
consistently set the same value for both the input and output encodings.

It is still possible to override it to a different value using
`spring.velocity.properties.input.encoding`

Closes gh-3994
2015-10-02 16:22:08 +02:00
Stephane Nicoll 8978f54cc3 Use spring.velocity.charset for template encoding
Previously `spring.velocity.charset` only controlled the output encoding
with the templates being loaded with the default encoding. We now
consistently set the same value for both the input and output encodings.

It is still possible to override it to a different value using
`spring.velocity.properties.input.encoding`

Closes gh-3994
2015-10-02 16:12:42 +02:00
Stephane Nicoll b2c3e7e2ed Rename error.* properties to server.error.*
Closes gh-4050
2015-10-02 14:03:24 +02:00
Andy Wilkinson 434d46f583 Add support for using RemoteSpringApplication behind a proxy
This commit adds two new properties, spring.devtools.remote.proxy.host
and spring.devtools.remote.proxy.port that can be used to configure
RemoteSpringApplication to connect to the remote application through
an HTTP proxy.

Closes gh-3968
2015-10-02 10:37:32 +01:00
Phillip Webb d4c2959cee Document X-Forwarded-For support
Closes gh-4018
2015-10-02 00:00:22 -07:00
Stephane Nicoll 93d12494e5 Migrate Spring Data Rest settings
In order to have more control on the structure of the configuration, we
do not bind to `RepositoryRestConfiguration` directly anymore. This
commit introduces `RepositoryProperties` instead.

See gh-3854
Closes gh-4073
2015-10-01 17:56:32 +02:00
izeye 5b211706c0 Polish
Closes gh-4069
2015-10-01 09:56:33 +02:00
Dave Syer cad2666522 Add support for LOG_LEVEL_PATTERN replacing the default level pattern
For logback we also support logging.pattern.level as a synonym.

Fixes gh-4062
2015-09-30 17:15:34 +01:00
zhanhb b855a68bf4 Fix typo
Closes gh-4054
2015-09-30 09:48:23 +02:00
Andy Wilkinson a23d11fe6c Update appendix with details of new Spring HATEOAS property
Follow-on from c55900b4.

Closes gh-3891
2015-09-29 13:43:15 +01:00
Michael Stummvoll a1e0f01103 Support `error.include-stacktrace` configuration
Add `error.include-stacktrace` configuration option to determine when
stack trace attributes should be added. Options are `never`, `always`
or `on-trace-param`.

Prior to this commit stacktrace attributes were never includes in HTML
responses, and only included in JSON responses when a `trace` request
parameter was set to `true`. This has now been changed so that,
by default, stacktrace attributes are never included.

The BasicErrorController includes a protected method that can be
overridden if includes should be different depending on the `produces`
mapping.

Closes gh-2371
2015-09-28 12:14:38 -07:00
Julien Dubois c401330901 Add Cassandra support
Add auto-configuration support and health checks for Cassandra and
Spring Data Cassandra.

Fixes gh-2064
Closes gh-2214
2015-09-25 23:00:53 -07:00
Phillip Webb 49fab4a60f Fix broken documentation link 2015-09-25 22:04:30 -07:00
Simon Buettner 70031cca66 Add statsd metric export auto-configuration
Update MetricExportAutoConfiguration to auto-configure statsd metrics
export when a `spring.metrics.export.statsd.host` property is set.

Closes gh-3719
2015-09-24 00:19:56 -07:00
Fabricio Colombo 605eb8a14d Add Liquibase labels and parameters properties
Update `LiquibaseAutoConfiguration` and `LiquibaseProperties` to add
support for labels and parameters.

Closes gh-3915
2015-09-23 23:56:51 -07:00
Stephane Nicoll 721b5a2395 Hazelcast auto-configuration
Provide a general purpose Hazelcast integration (i.e. not tied to caching).

Auto-configure a `HazelcastInstance` either based on the presence of a
`Config` bean or a configuration file. Said configuration file can be
specified explicitly or automatically found from default locations.

The cache integration already supports Hazelcast so it has been reworked
to automatically reuse an existing `HazelcastInstance` if available.

Closes gh-2942
2015-08-27 10:45:04 +02:00
Stephane Nicoll 3c91781bee Add additional exclude property
The default value of `spring.devtools.restart.exclude` is quite long and
any override requires to copy/paste it to add additional exclusions. To
avoid that, a new `spring.devtools.restart.additional-exclude` property
has been added.

Both properties are now used to compute the full list of exclusions that
is used by PatternClassPathRestartStrategy.

Closes gh-3774
2015-08-19 14:08:05 +02:00
Stephane Nicoll d1a4d6958a Document spring.datasource.name
The `spring.datasource.name` property was hidden behind the 'name'
attribute of the Tomcat connection pool (since we are mapping all
datasource implementations on the `spring.datasource` namespace.

This commit replace the injected value by hand with the use of the
regular `DataSourceProperties`. That way, we generate proper meta-data
for it as well.

Closes gh-3755
2015-08-14 14:07:38 +02:00
Stephane Nicoll 2d62e1fc89 Add a property to configure the connection pool
A new `spring.datasource.type` property can now be used to configure the
connection pool implementation to use (rather than only relying on Boot's
preferences).

Closes gh-3705
2015-08-14 13:30:14 +02:00
Stephane Nicoll 4e0f99ed8b Polish
Closes gh-3750
2015-08-14 09:24:24 +02:00
Eddú Meléndez 74e1a1c940 Add fallbackToSystemLocale configuration key
Allow to configure the `fallbackToSystemLocale` attribute of
`MessageSource` via configuration.

Closes gh-3749
2015-08-14 09:09:40 +02:00
Stephane Nicoll 9d2d34216b Remove references to endpoints.hal
See gh-3696
2015-08-11 09:14:40 +02:00
Andy Wilkinson 2ae8a021f9 Merge branch '1.2.x' 2015-08-10 16:59:04 +01:00
Andy Wilkinson a2f4c1cc4a Add support for configuring allowSessionOverride via the environment
This commit adds support for using the environment to configure the
Freemarker and Velocity view resolvers to allow session overrides.

Closes gh-3410
2015-08-10 16:58:17 +01:00
Andy Wilkinson 58db5a3889 Combine /links and /hal into a single /actuator endpoint
This commit provides a single endpoint, /actuator, that serves HTML
(the HAL browser) or JSON depending on the request’s accept header
that enables discovery of all of the actuator’s other endpoints.

When the management context path is configured, the /actuator endpoint
moves to the configured path, e.g. if the management context path is
set to /management, the actuator endpoint will be available from
/management.

Closes gh-3696
2015-08-10 11:40:35 +01:00
Andy Wilkinson 1a11ed20ba Provide a property to configure conversion word used to log exceptions
This commit adds a new property, logging.exception-conversion-word,
that can be used to configure the conversion word that is used when
logging exceptions. The default value, %rEx, will log exceptions
with the root cause first and include class packaging information in
the stack trace. The new property is supported when using either
Logback or Log4J2.

Closes gh-3684
2015-08-06 11:37:54 +01:00
Stephane Nicoll 67d29c13f5 Fix typo 2015-08-06 11:52:51 +02:00
Stephane Nicoll e88c58828f Polish documentation
Upgrade documentation for the `hal` and `links` endpoints as they are
not using the root anymore.

Closes gh-3621
2015-08-06 11:13:53 +02:00
Stephane Nicoll 6c7a5c5077 Harmonize Undertow's access log properties
Harmonize the configuration properties for Undertow to match the changes
made for gh-2491.

Move `spring.undertow.accessLog*` to `spring.undertow.accesslog.*`
2015-08-05 14:34:48 +02:00
Stephane Nicoll 62406546e2 Improve customization of Tomcat's access log
Add `directory`, `prefix` and `suffix` properties to further customize
how access logs are configured on Tomcat. Relocate all properties to the
`server.tomcat.accesslog` namespace.

`server.tomcat.accessLogPattern` and `server.tomcat.accessLogEnabled` are
deprecated and replaced by `server.tomcat.accesslog.pattern` and
`server.tomcat.accesslog.enabled` respectively.

Closes gh-2491
2015-08-05 14:34:48 +02:00
Andy Wilkinson 4a25bae143 Allow additional paths that trigger a reload/restart to be configured
Previously, only folders on the classpath would be watched and used
to trigger a restart/reload of the application. This commit adds a
new property spring.devtools.restart.additional-paths that can be
used to configure additional paths that should be watched for
changes. When a change occurs in one of those paths a restart or
reload will be triggered, depending on the full restart exclude
patterns configured via the existing spring.devtools.restart.exclude
property.

Closes gh-3469
2015-08-05 12:43:09 +01:00
Andy Wilkinson 2a5a32b603 Add auto-configuration for H2’s web console
Three conditions must be met for the console to be enabled:

 - H2 is on the classpath
 - The application is a web application
 - spring.h2.console.enabled is set to true

If spring-boot-devtools is on the classpath, spring.h2.console.enabled
will be set to true automatically. Without the dev tools, the enabled
property will have to be set to true in application.properties.

By default, the console is available at /h2-console. This can be
configured via the spring.h2.console.path property. The value of this
property must begin with a '/'.

When Spring Security is on the classpath the console will be secured
based on the user's security.* configuration. When the console is
secured, CSRF protection is disabled and frame options is set to
SAMEORIGIN for its path. Both settings are required in order for the
console to function.

Closes gh-766
2015-08-05 10:54:03 +01:00
Stephane Nicoll 7669e888cb Polish
Closes gh-3649
2015-08-04 15:11:11 +02:00
izeye e0ee7c7ffb Polish documentation for actuator-docs
Closes gh-3564
2015-08-04 10:01:28 +01:00
Stephane Nicoll eb5d92f3f0 Exclude auto-configurations via property
Add `spring.autoconfigure.exclude` to control the list of
auto-configuration classes to exclude via configuration. Merge the
exclusions defined on the `@EnableAutoConfiguration` or
`@SpringBooApplication` if any.

Closes gh-2435
2015-08-04 10:50:49 +02:00
Stephane Nicoll 42253ea8bc Polish 2015-08-03 14:44:41 +02:00
Stephane Nicoll b569918db1 Add property to disable default health indicators
Add a "management.health.defaults.enabled" property that controls whether
the default health indicators are enabled. This allow to disable them all
by default and still enable individual ones using their respective
specific property.

Closes gh-2298
2015-08-03 14:26:12 +02:00
Stephane Nicoll b17809b4e7 Add missing metrics export keys 2015-08-03 10:18:41 +02:00
Stephane Nicoll c0500d6d62 Add documentation for Hypermedia endpoints 2015-08-03 09:34:29 +02:00
Stephane Nicoll a4e5ee0b32 Fix typo 2015-08-02 10:04:50 +02:00
Stephane Nicoll 96fc107ca1 Customize Thymeleaf default template resolver order
Currently, the default TemplateResolver had no specific order. Thymeleaf
handles that with a "always first" strategy (that can be confusing if
several TemplateResolver have a "null" order.

While it is a fine default (and changing it could lead to weird side
effects), it has to be changed as soon as another TemplateResolver bean
is defined in the project.

The `spring.thymeleaf.template-resolver-order` property has been added to
control  the order of the default TemplateResolver.

Closes gh-3575
2015-07-28 14:28:31 +02:00
Stephane Nicoll 92871ea03e Polish
See gh-3600
2015-07-27 15:15:38 +02:00
Stephane Nicoll d6e914be87 Add auto-startup configuration property
Allow to disable the auto-startup flag of the default JMS and RabbitMQ
containers. This effectively permit to disable automatic listening via
configuration.

Closes gh-3587
2015-07-24 06:49:27 +02:00
Phillip Webb 6f6f898739 Polish 2015-07-20 10:22:10 -07:00
Stephane Nicoll 6333786819 Fix wrong default value 2015-07-20 15:42:46 +02:00
izeye 672281c214 Polish docs
Closes gh-3561
2015-07-20 15:40:44 +02:00
izeye 31d8a647d0 Fix typos
Closes gh-3531
2015-07-17 09:08:47 +02:00
Stephane Nicoll 03abd20542 Polish
Add missing default value
2015-07-17 09:07:08 +02:00
Phillip Webb 08d1f6daf5 Allow persistent servlet sessions across restarts
Update Tomcat, Jetty and Undertow to serialize session data when the
application is stopped and load it again when the application restarts.

Persistent session are opt-in; either by setting `persistentSession`
on the ConfigurableEmbeddedServletContainer or by using the property
`server.session.persistent=true`.

Fixes gh-2490
2015-07-16 17:29:20 -07:00
Andy Wilkinson 352ff4e899 Rename Embedded Mongo configuration prefix to spring.mongodb.embedded
Previously, the prefix was spring.embedded-mongodb. This was
inconsistent with the prefixes for Artermis and HornetQ which are
spring.artemis.embedded and spring.hornetq.embedded respectively.

See gh-2002
2015-07-16 17:04:15 +01:00
Andy Wilkinson 2c81907d58 Flesh out and polish Embedded MongoDB auto-configuration contribution
Embedded MongoDB is now auto-configured when it is on the classpath.
The Mongo instance will listen on the port specified by the
spring.data.mongodb.port property. If this property has a value of
zero and randomly allocated port will be used. In such an event, the
MongoClient created by MongoAutoConfiguration will be automatically
configured to use the port that was allocated.

By default, MongoDB 2.6.10 will be used. This can be configured using
the spring.embedded-mongodb.version property. Mongo's sync delay
feature is enabled by default. This can be configured using the
spring.embedded-mongobd.features property.

Closes gh-2002
2015-07-16 16:34:18 +01:00
Stephane Nicoll 4aace564a2 Fix typo
Closes gh-3519
2015-07-16 15:28:24 +02:00
Stephane Nicoll aa483984c5 Polish 1683d8a8
Closes gh-3475
2015-07-16 15:22:38 +02:00
Stephane Nicoll 22a7b0cdee Customize default `JmsListenerFactory`
Expose acknowledgment mode and concurrency settings in configuration for
 the default `JmsListenerContainerFactory`

 Closes gh-3519
2015-07-16 14:39:48 +02:00
izeye f4589e7cc3 Fix typos
Closes gh-3504
2015-07-15 15:45:02 +02:00
Andy Wilkinson b1e9139efe Allow Jackson’s time zone to be configured via the environment
This commit adds a new property, spring.jackson.time-zone, that can be
used to configure the time zone that Jackson uses when configuring
dates. It affects the serialisation of both JDK and Joda date types.

Closes gh-3505
2015-07-15 14:34:58 +01:00
Ivan Sopov 5f25080091 Add HTTP compression excludeUserAgents property
Closes gh-3363
2015-07-10 16:31:55 -07:00
Rob Baily 177ea459f1 Support log pattern properties with logback
Update AbstractLoggingSystem to pass LoggingInitializationContext to
loadDefaults() method to enable access to the environment.
DefaultLogbackConfiguration now uses this to find log pattern overrides.

Fixes gh-3367
Closes gh-3405
2015-07-10 15:23:46 -07:00
Stephane Nicoll f34508ff8a Remove outdated key
The `spring.metrics.export.redis.aggregate-key-pattern` is no longer
defined but was still referenced in the documentation.
2015-07-09 10:46:05 +02:00
Stephane Nicoll 8cb6f7bcb8 Polish
See  gh-3372
2015-07-09 09:43:20 +02:00
Stephane Nicoll 5024c0f8a1 Polish
Add documentation for server.session.cookie keys

See gh-3240
2015-07-09 09:21:33 +02:00
Phillip Webb 2a20994833 Document static-resources configuration property
Add `spring.resources.static-locations` to the reference documentation
appendix.

Fixes gh-3372
2015-07-08 23:39:11 -07:00
Phillip Webb 3588ca8637 Add session configuration properties
Add support for the following server properties which can be used to
configure the session:

	server.session.tracking-modes
	server.session.cookie.name
	server.session.cookie.domain
	server.session.cookie.path
	server.session.cookie.comment
	server.session.cookie.http-only
	server.session.cookie.secure
	server.session.cookie.max-age

In addition `server.session-timeout` is now deprecated and has been
replaced with `server.session.timeout`.

Fixes gh-3240
2015-07-08 14:10:06 -07:00
Stephane Nicoll a073a505ae Move spring.oauth2.* to security.oauth2.*
Unfortunately, we have no other choice to flip the ignoreUnknownFields
attribute of `SecurityProperties` has many different target are now set
for that namespace outside the class. See gh-3445 for a potential way
to improve that.

Closes gh-3327
2015-07-08 18:26:25 +02:00
Marten Deinum a3e62676af Extend TemplateViewResolverProperties for Groovy
Use AbstractTemplateViewResolverProperties as the base class for
GroovyTemplateProperties since the Spring GroovyMarkupViewResolver is
an AbstractTemplateViewResolver.

The auto-configuration for Groovy is now more aligned with the existing
Freemarker and Velocity auto-configuration, with a `resourceLoaderPath`
property being used instead of `prefix`.

Fixes gh-3365
Closes gh-3374
2015-07-06 14:45:28 -07:00
Stephane Nicoll eb10275f5a Polish
Polish 383e94c to validate any `JavaMailSenderImpl` and not only the
one that has been created by auto-configuration.

Closes gh-3409
2015-07-06 14:43:37 +02:00
Eddú Meléndez 6f31080f78 Add mail server connection check
If a `JavaMailSenderImpl` is available, check that the underlying mail
server is available on startup. Add a `spring.mail.test-connection`
property to control this behaviour.

Closes gh-3408
2015-07-06 14:43:37 +02:00
izeye 631a02b8bc Fix typo
Closes gh-3403
2015-07-02 07:02:54 -07:00
Phillip Webb 268b7911dd Rename ResourceProperties.Chain.html5AppCache
Rename the `html5AppCache` property from `ResourceProperties.Chain` to
`html-application-cache`.

Fixes gh-3354
2015-06-29 17:14:44 -07:00
Andy Wilkinson 00d594dcda Replace GzipFilter and Tomcat compression with general purpose approach
Closes gh-3296
2015-06-29 15:58:57 +01:00
Stephane Nicoll a6ccb4a6e0 Polish
Polish resource handling chain support. Make sure that the chain is
enabled automatically if at least one strategy is enabled.

See gh-1604
2015-06-28 06:32:07 -07:00
Brian Clozel dd561d15cf Improve Spring Resource Handling support
This commit improves support of the Resource Handling features
introduced in Spring Framework 4.1. Those features add new ways to
resolve and transform static resources in applications.
See [this blog
post](https://spring.io/blog/2014/07/24/spring-framework-4-1-handling-static-web-resources)
for more details.

The `ResourceUrlEncodinFilter` is added for compatible template engines:
Velocity and Thymeleaf. It assists them with rewriting the URLs of
static resources when rendering templates.

New keys are added in the `ResourceProperties` in order to configure
the Resource Handling chain. `ResourceResolvers` and
`ResourceTransformers` are registered accordingly in
`WebMvcAutoConfiguration`.

Here is an example of enabling a `ContentVersionStrategy` on all
static resources, meaning their names will be changed for cache
busting purposes by adding a content hash at the end of the file name.
Like "/js/jquery.js -> /js/jquery-872ca6a9fdda9e2c1516a84cff5c3bc6.js".

```
spring.resources.chain.enabled:true
spring.resources.chain.strategy.content.enabled:true
spring.resources.chain.strategy.content.paths:/**
```

Closes gh-1604
Closes gh-3123
2015-06-28 06:32:07 -07:00
Johannes Stelzer 308a5eaff5 Add /logfile MVC actuator endpoint
Add a `/logfile` endpoint which can be used to fetch the contents of
the log file (if one is being used).

Fixes gh-2137
Closes gh-2294
2015-06-23 17:14:40 -07:00
cohee016 d948ec5810 Add Freemarker `prefer-file-system-access` support
Add a `spring.freemarker.prefer-file-system-access` property and update
FreeMarkerAutoConfiguration to support it.

Fixes gh-2901
2015-06-23 11:34:02 -07:00
Phillip Webb 0f977ce864 Polish 2015-06-23 00:47:32 -07:00
Tomasz Przybyła becced5f0b Add `spring.pid.fail-on-write-error` support
Update `ApplicationPidFileWriter` to support a 'fail on write error'
properties which allows the user to exit the application if the PID
file cannot be written.

This commit also deprecates `spring.pidfile` in favor of
`spring.pid.file` so that the new property can be added without overlap.

Fixes gh-2764
2015-06-22 23:43:58 -07:00
Phillip Webb 7fd07b6588 Document jOOQ support
Closes gh-2804
2015-06-22 21:20:12 -07:00
Andy Wilkinson d30dd1fa98 Merge branch '1.2.x' 2015-06-22 13:44:42 +01:00
Andy Wilkinson 01ba0f7571 Make RemoteIpValve's protocolHeaderHttpsValue configurable via the env
Closes gh-3289
2015-06-22 13:44:09 +01:00
Phillip Webb 3e4bbf05cd Document Apache Artemis support
See gh-3154
2015-06-18 21:00:34 -07:00
izeye 436054053c Fix default MBeanServer bean name in doc
Closes gh-3283
2015-06-18 17:46:05 +02:00
Eddú Meléndez 58ca6cdc76 Add support for FieldNamingStrategy
Closes gh-3031
Closes gh-3069
2015-06-18 15:44:32 +02:00
Stephane Nicoll be5e30b409 Migrate spring.view properties
Migrate `spring.view.prefix` and `spring.view.suffix` to
`spring.mvc.view.prefix` and `spring.mvc.view.suffix` respectively. The
former properties are still handled in a backward compatible way and are
defined as deprecated in the meta-data.

Closes gh-3250
2015-06-18 13:55:44 +02:00
Stephane Nicoll fd5d6ef303 Polish 2015-06-18 08:52:47 +02:00
Stephane Nicoll cb98ee25ff Polish
See gh-2900
2015-06-17 09:27:44 +02:00
Sebastien Deleuze 78a7b6ed66 Add async request timeout property
Add a new `spring.mvc.async.request-timeout` property which can be used
to configure AsyncSupportConfigurer.setDefaultTimeout(..).

Fixes gh-2900
Closes gh-3236
2015-06-16 21:00:43 -07:00
Phillip Webb d87f2713af Merge branch '1.2.x' 2015-06-15 11:38:24 -07:00
Artur Mkrtchyan d6e24a15de Update `logging.path` documentation sample
Update appendix example to use the more common `/var/log` folder rather
than `/var/logs`.

Fixes gh-3225
2015-06-15 11:36:03 -07:00
izeye 952f34b828 Fix mbean server property
`spring.jmx.server` was incorrectlyt documented as
`spring.jmx.mbean-server` in the documentation.

Closes gh-3211
2015-06-13 18:20:13 +02:00
Phillip Webb 24fc94461b Polish 2015-06-11 10:44:52 -07:00
Stephane Nicoll 34e4163ebc Improve configuration keys documentation 2015-06-11 11:17:36 +02:00
Stephane Nicoll 982b74a9b0 Fix property duplication 2015-06-11 10:32:06 +02:00
Stephane Nicoll fcb45a4bb7 Polish devtools documentation
See gh-3088
2015-06-11 09:33:09 +02:00
Stephane Nicoll c1dea3797a Add documentation for SpringApplicationAdminMXBean
Closes gh-3179
2015-06-10 13:46:37 +02:00
Stephane Nicoll 8c8fce5b0f Merge branch '1.2.x'
Conflicts:
	spring-boot-docs/src/main/asciidoc/appendix-application-properties.adoc
2015-06-08 15:18:45 +02:00
Stephane Nicoll 7fc9c2afdf Fix indent 2015-06-08 15:17:05 +02:00
Stephane Nicoll e16f5d03ab Add reference to Mustache to documentation
Closes gh-3121
2015-06-08 15:16:01 +02:00
Stephane Nicoll 20cd6c4b6a Merge branch '1.2.x' 2015-06-07 10:29:27 +02:00
izeye c7103bf2a4 Add missing slash
`endpoints.jolokia.path` requires the path to start with a slash.

Closes gh-2864
2015-06-07 10:29:03 +02:00
Stephane Nicoll 432c00e857 Polish redis connection timeout support
Closes gh-3142
2015-06-06 13:35:31 +02:00
Phillip Webb 683c19ee8b Polish 2015-06-04 12:21:35 -07:00
Stephane Nicoll f6115a0713 polish
Closes gh-3110
2015-06-04 14:49:49 +02:00
izeye ee252a3285 Document `spring.metrics.export.*` properties
See gh-3110
2015-06-04 14:49:32 +02:00
Stephane Nicoll 328e07ebf3 polish mail jndi support
Closes gh-2419
2015-06-02 15:04:35 +02:00
Eddú Meléndez 28cb13c31d Add mail jndi support
See gh-2419
2015-06-02 15:04:06 +02:00
izeye da8f3ec9b8 Add default value for endpoints.cors.max-age
Closes gh-3063
2015-05-29 09:45:18 +02:00
Stephane Nicoll 1457a55e41 Remove spring.cache.config property
Remove `spring.cache.config`  as it is too generic and does not express
enough what is configured. This property is replaced by cache library
specific properties, that is `spring.cache.ehcache.config`,
`spring.cache.hazelcast.config`, `spring.cache.infinispan.config` and
`spring.cache.jcache.config`.

See gh-2633
2015-05-28 18:15:35 +02:00
Stephane Nicoll fc61f2e837 Improve documentation for JMX related keys
Closes gh-2747
2015-05-27 11:36:34 +02:00
Stephane Nicoll 51e6eda88a Update documentation for spring.main.sources
Closes gh-2851
2015-05-27 11:11:19 +02:00
Stephane Nicoll e3a124d0f9 Expose additional RabbitMQ settings
Allow SSL to be configured via standard configuration as well as the
requestedHeartbeat. Switch to RabbitConnectionFactoryBean.

Closes gh-2655, gh-2676
2015-05-26 21:32:58 +02:00
Stephane Nicoll ab55331863 Improve configuration keys documentation 2015-05-26 17:26:01 +02:00
Stephane Nicoll 9f010ed8c0 Merge branch '1.2.x' 2015-05-26 15:01:13 +02:00
Stephane Nicoll 160f2d341f Fix Gzip filter properties
Fix `excludeAgentPatterns`, `excludePaths` and `excludePathPatterns`
properties. Introduce `excludedMimeTypes` property.

Fixes gh-3042
2015-05-26 15:00:54 +02:00
izeye 9993b63a63 Fix broken link in doc
Closes gh-3040
2015-05-26 09:49:09 +02:00
Stephane Nicoll bd6f7a589c Expose enableFallback property
Add an extra property to control the support of fallback resolution for
mobile views.

Fixes gh-3009, gh-3019
2015-05-21 19:20:06 +02:00
Andy Wilkinson 95f31b0d30 Polish Undertow access logs contribution
- Apply project’s code formatting and conventions
 - Don’t use the IO and worker thread configuration when creating the
   worker for the AccessLogReceiver. The IO and worker thread
   configuration is for HTTP request processing and a worker in its
   default configuration should be sufficient for the access log
   receiver.
 - Don’t use a temporary directory as the default for the access log
   directory. A temporary directory makes (some) sense for Tomcat as it
   requires a directory for its basedir. Undertow has no such
   requirement and using a temporary directory makes it hard to locate
   the logs. The default has been updated to a directory named logs,
   created in the current working directory.
 - Document the new properties in the application properties appendix

Closes gh-3014
2015-05-20 11:02:49 +01:00
Andy Wilkinson 1fe1aa8939 Update RemoteIpValve’s default internal proxies to include 172.16/12
Closes gh-2699
2015-05-19 17:34:53 +01:00
Stephane Nicoll e0f59d8a74 polish batch table prefix customization
See gh-2132
2015-05-19 10:06:09 +02:00
Stephane Nicoll 62a2dd659b Add display-name option
Allow the display-name of the application to be customized when deployed
in an embedded container via the `server.display-name` property.

Closes gh-2600
2015-05-15 16:27:43 +02:00
Stephane Nicoll d63d2dded8 polish
Improve documentation of cors settings.

See gh-2936
2015-05-15 08:45:15 +02:00
Andy Wilkinson 84d3a34c49 Add CORS support to the actuator’s endpoints
This commit adds CORS support to the Actuator’s MVC endpoints. CORS
support is disabled by default and is only enabled once the
endpoints.cors.allowed-origins property has been set.

The new properties to control the endpoints’ CORS configuration are:

endpoints.cors.allow-credentials
endpoints.cors.allowed-origins
endpoints.cors.allowed-methods
endpoints.cors.allowed-headers
endpoints.cors.exposed-headers

The changes to enable Jolokia-specific CORS support (57a51ed) have been
reverted as part of this commit. This provides a consistent approach
to CORS configuration across all endpoints, rather than Jolokia using
its own configuration.

See gh-1987
Closes gh-2936
2015-05-14 11:39:53 +01:00
Andy Wilkinson d4dfa8d979 Polish 18453c0e
Document new configuration properties and remove redundant code
2015-05-13 08:51:01 +01:00
Stephane Nicoll 5ccf495c52 Add explicit reference to Flyway
Add an entry for `flyway.*` to make it more explicit that any public
property of the auto-configured `Flyway` object can be set via the
`flyway` prefix.

Closes gh-2667
2015-04-21 10:26:07 +02:00
Eddú Meléndez bd93c75216 Add spring.cache keys documentation
See gh-2633
2015-04-14 14:35:09 +02:00
Stephane Nicoll f480c0de2f Merge branch '1.2.x' 2015-04-14 09:51:58 +02:00
Stephane Nicoll 0f14210937 Polish documentation 2015-04-14 09:51:14 +02:00
Stephane Nicoll 476f232d49 Fix "spring.mandatory-file-encoding" property doc 2015-04-13 12:23:06 +02:00
Stephane Nicoll 7a4e246f08 Fix typo 2015-04-12 10:55:00 +02:00
Andy Wilkinson 03b109a2c8 Polish Elasticsearch health indicator
- Nest the configuration class in HealthIndicatorAutoConfiguration,
   bringing it into line with the other health indicator configuration
   classes
 - Include the statistics from the response in the health’s details
 - Map YELLOW to UP rather than UNKNOWN as it indicates that the cluster
   is running but that “the primary shard is allocated but replicas are
   not” [1]. The details can be used to determine the precise state of
   the cluster.
 - Add a property to configure the time that the health indicator will
   wait to receive a response from the cluster
 - Document the configuration properties
 - Update the tests to cover the updated functionality

See gh-2399

[1] http://www.elastic.co/guide/en/elasticsearch/reference/1.x/cluster-health.html
2015-04-09 10:16:32 +01:00
Andy Wilkinson 1dcf18b16e Allow Jackson's serialization inclusion to be configured via the env
This commit adds support for configuring an ObjectMapper's
serialization inclusion using the environment via the
spring.jackson.serialization-inclusion property. The property's value
should be one of the values on the JsonInclude.Include enumeration.
Relaxed binding of the property value to the enum is supported. For
example:

spring.jackson.serialization-inclusion: non_null

Closes gh-2532
2015-04-08 16:47:49 +01:00
Andy Wilkinson c51277f6eb Merge branch '1.2.x' 2015-04-07 17:49:42 +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 3df6cb1325 Merge branch '1.2.x' 2015-04-07 11:37:43 +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 9444a25de3 Merge branch '1.2.x' 2015-03-18 14:06:36 +00:00
Andy Wilkinson 0a38b9b3ab Enable the configuration of arbitrary Elasticsearch client properties
Previously, only a handful of properties could be set when
auto-configuring an Elasticsearch client. This commit introduces support
for configuring arbitrary properties using the
spring.data.elasticsearch.properties prefix. For example,
client.transport.sniff can be configured using
spring.data.elasticsearch.properties.client.transport.sniff.

Closes gh-1838
2015-03-18 14:06:11 +00:00
Andy Wilkinson b2a68d700f Merge branch '1.2.x' 2015-03-17 11:49:03 +00:00
Andy Wilkinson 89b4cac8b0 Allow Elasticsearch client-transport-sniff to be configured via the env
Previously, a TransportClient sniff property could not be configured
while using Spring Boot’s Elasticsearch auto-configuration. This commit
adds a new property, spring.data.elasticsearch.client-transport-sniff,
that can be used to configure the TransportClient while continuing to
use the auto-configuration support.

Closes gh-1838
2015-03-17 11:48:55 +00:00
Eric Dahl 018310e478 Fix broken link in docs 2015-03-10 08:21:21 +01:00
Eric Dahl 47b6d9588c Fix broken link in docs 2015-03-08 14:40:27 -07:00
Maciej Walkowiak f05769dcc5 Add auto-configuration for SendGrid's client
Closes gh-2160
Closes gh-2280
2015-03-05 16:09:56 +00:00
Phillip Webb 1231da1c2f Add security.basic.authorize-mode property
Add a `security.basic.authorize-mode` property that can be used to
affect how basic security authorization is applied.

Fixes gh-2462
2015-02-25 12:36:55 -08:00
Phillip Webb f7221be7c9 Rename spring.favicon.enabled property
Rename `spring.favicon.enabled` to `spring.mvc.favicon.enabled`.

See gh-2377
2015-02-25 11:36:28 -08:00
izeye 1493da1e03 Improve documentation
Closes gh-2553
2015-02-25 11:32:58 -08:00
izeye 319663a628 Improve doc for application.properties. 2015-02-08 09:58:40 +01:00
Andy Wilkinson b4cb7a35c9 Document spring.http.converters.preferred-json-mapper
See gh-2247
2015-02-05 12:06:19 +00:00
Phillip Webb e1a80fa496 Fix broken reference documentation link 2015-02-02 21:30:49 -08:00
Andy Wilkinson 528a632fd1 Allow XA DataSource and ConnFactory pools to be configured via the env
This commit adds support for configuring the XA DataSource and
ConnectionFactory pools created by Atomikos and Bitronix via the
environment. The property prefixes vary depending on the transaction
manager that’s in use. They are:

Bitronix:
 - spring.jta.bitronix.datasource
 - spring.jta.bitronix.connectionfactory

Atomikos:
 - spring.jta.atomikos.datasource
 - spring.jta.atomikos.connectionfactory

The configuration processor has been updated to ignore
javax.jms.XAConnectionFactory and javax.sql.XADataSource as neither of
these types can be created via property binding.

Closes gh-2027
2015-01-27 10:55:56 +00:00
Andy Wilkinson e2f2839d32 Document Tomcat compression and GzipFilter auto-configuration
Closes gh-2031
2015-01-16 12:07:29 +00:00
Phillip Webb 4ad5c52dd7 Add support for `server.ssl.enabled` property
Fixes gh-2241
2015-01-06 21:51:50 -08:00
Phillip Webb c7cfdbe250 Polish appendix 2014-12-28 12:22:16 -08:00
Phillip Webb fd97c7553c Apply HATEOAS module to primary ObjectMapper
Update HypermediaAutoConfiguration to apply the Jackson2HalModule to
the primary ObjectMapper. This restores the behavior of Spring Boot
1.1 where HATEOAS types could be serialized for both `application/json`
and `application/json+hal` content types.

A `spring.hateoas.apply-to-primary-object-mapper` property has also been
provided to opt-out if necessary.

Fixes gh-2147
2014-12-22 20:35:50 -08:00
Stephane Nicoll b8612d99c6 Add explicit reference to health.*
Health indicator configuration keys have moved from the health.* to the
management.health.* namespace. This commit adds an explicit reference
to the previous location.

See gh-2128
2014-12-12 17:11:13 +01:00
Stephane Nicoll 1da0deeef6 Add missing keys in appendix 2014-12-09 18:04:47 +01:00
Phillip Webb af643e2f54 Merge branch '1.1.x'
Conflicts:
	spring-boot/src/main/java/org/springframework/boot/logging/LoggingApplicationListener.java
2014-12-05 10:25:30 -08:00
kakawait f65c7dbeb3 Update 'flyway.locations' appendix documentation
Replace `classpath:db/migrations` with `classpath:db/migrations`.

Fixes gh-2063
2014-12-05 10:23:54 -08:00
Phillip Webb 211f20b9c6 Add setIgnoreDefaultModelOnRedirect support
Add a `spring.mvc.set-ignore-default-model-on-redirect` property to
allow RequestMappingHandlerAdapter.setIgnoreDefaultModelOnRedirect to
be easily customized and change the default value to 'true'.

Fixes gh-2018
2014-12-03 11:31:09 -08:00
Dave Syer 3bb598a421 Only hide /health details if the app is actually secure
Also gives the user the option to override (by setting
endpoints.health.sensitive=false).

Fixes gh-1977 in a slightly different way
2014-11-25 16:40:18 +00:00
Andy Wilkinson 55fadf1231 Merge branch '1.1.x' 2014-11-25 13:54:06 +00:00
Sjoerd Mulder cc557833a4 Escape backslashes in .properties examples of setting internal-proxies
In a properties file, a backslash is used as an escape character for
the line terminator sequence to allow values to be split across
multiple lines. When a backslash is used elsewhere they're stripped
out of the property's value.

This commit updates .properties-based examples for configuring
server.tomcat.internal-proxies to escape the backslahes so that they
are retained in the property's value at runtime.

See gh-1989
2014-11-25 13:39:25 +00:00
Andy Wilkinson 26a511495e Allow the user to opt-out of anonymous access restrictions for /health
By default, when /health is accessed anonymously, the details are
stripped, i.e. the response will only indicate UP or DOWN. Furthermore
the response is cached for a configurable period to prevent a denial
of service attack.

This commit adds a configuration property,
endpoints.health.restrict-anonymous-access, that can be set to false
to allow full anonymous access to /health. When full access is
allowed, the details will be included in the response and the response
will not be cached.

Closes gh-1977
2014-11-25 12:04:45 +00:00
Stephane Nicoll 4402c6b4a0 Haromonize configuration keys to lowercase hyphen 2014-11-25 09:00:02 +01:00
Phillip Webb 2b57c5a4dd Rename spring.data.mongo.repositories.enabled
Rename mongo to mongodb.

Fixes gh-1966
2014-11-20 14:57:49 -08:00
Phillip Webb 670ba33bec Improve MongoDataAutoConfiguration
Update MongoDataAutoConfiguration to provide easier configuration of
CustomConversions, the MappingMongoConverter, MongoMappingContext
and an authentication database.

Fixes gh-1619
Fixes gh-1730
2014-11-20 14:55:19 -08:00
Phillip Webb c34cfb27a3 Polish 2014-11-19 10:52:26 -08:00
Andy Wilkinson 35b7ba5cda Deprecate http.mappers.* properties
The http.mappers.* configuration properties assumed that the mapping
was JSON (on of the property names was jsonPrettyPrint) and also only
exposed a small subset of the configuration options supported by
Jackson (and GSON). The property names implied that it would configure
all HTTP mapping, however it was ignored by GsonAutoConfiguration.

This commit deprecates the support for http.mappers.* in favour of
configuring Jackson or Gson instead. Jackson can be configured
declaratively using the spring.jackson.* properties or programtically.
Gson can be configured programatically by using a GsonBuilder to
create a Gson instance with the desired configuration.
gh-1946 has been opened to add support for declarative configuration
of Gson.

Closes gh-1945
2014-11-18 13:51:48 +00:00
Andy Wilkinson 05cf686713 Allow servlet context parmeters to be configured via declaratively
Previously, configuration of a ServletContext init parameter required
the use of a ServletContextInitializer bean. This commmit adds
support for declarative configuration via the environment using
server.context_parameters.<name>=<value>.

Closes gh-1791
2014-11-17 20:20:08 +00:00
Stephane Nicoll 8112aca9e8 Add documentation for email integration
Closes gh-1904
2014-11-17 14:43:46 +01:00
Stephane Nicoll 109c3a3439 Auto configure CharacterEncodingFilter
Provide a default UTF-8 encoding for HTTP requests and responses unless
specified otherwise.

Fixes gh-1182
2014-11-11 12:01:15 +01:00
Stephane Nicoll 00961611b2 Move health.* properties to management.health.*
Fixes gh-1841
2014-11-07 07:20:34 +00:00
Phillip Webb 96a031cf20 Default spring.datasource.jmx-enabled to false
Change the default value of spring.datasource.jmx-enabled to false
to prevent InstanceAlreadyExistsException problems when using the
Spring Test Framework.

Fixes gh-1590
2014-11-06 21:38:07 -08:00
Phillip Webb 58d660d10d Allow DAO ExceptionTranslator to proxy classes
Update the auto-configured PersistenceExceptionTranslationPostProcessor
to proxy target classes as well as interfaces. Also provide a config
property to disable registration all together.

Fixes gh-1844
2014-11-06 19:13:50 -08:00
Phillip Webb ba0dd60de9 Rename charSet to charset
Rename AbstractTemplateViewResolverProperties.setCharSet/getCharSet to
setCharset/getCharset, deprecating the old method.

Fixes gh-1835
2014-11-05 16:57:05 -08:00
Phillip Webb ab7f73f365 Use dashed case for properties appendix
Additional items added since 1.1.x

Fixes gh-1834
2014-11-05 16:52:59 -08:00
Phillip Webb df1d035162 Merge branch '1.1.x'
Conflicts:
	spring-boot-docs/src/main/asciidoc/appendix-application-properties.adoc
2014-11-05 16:51:33 -08:00
Phillip Webb 2f17c38822 Use dashed case for properties appendix
Fixes gh-1834
2014-11-05 16:50:21 -08:00
Phillip Webb ea6162254d Update pidfile property and add documentation
Change the pidfile property from `spring.application.pidfile` to
`spring.pidfile` (to save confusion with SpringApplication properties).

Also added documentation and meta-data information.

See gh-1579
2014-11-05 08:29:17 -08:00
Phillip Webb 10d1d5dfb4 Merge branch '1.1.x' 2014-11-05 08:11:54 -08:00
Phillip Webb e1894c1c4b Add check-template-location properties to appendix
Some were missing, some were named incorrectly.

See gh-1827
2014-11-05 08:10:59 -08:00
Stephane Nicoll dba4ad0768 Fix typo 2014-11-05 14:35:50 +01:00
Phillip Webb a973fd41f4 Polish 2014-11-03 18:49:20 -08:00
Andy Wilkinson 0cdb1d3f22 Make Spring Security's filter's order configurable and default to zero
Previously, Spring Security's filter had no configured order. Due to
the use of AnnotationAwareOrderComparater this meant that its order
defaulted to LOWEST_PRECEDENCE. This meant that a user had to declare
a FilterRegistrationBean for the filter and explicitly set its order
if they want another filter to run after Spring Security's.

This commit updates the security auto-configuration to assign a
default order of zero to Spring Security's filter, allowing filters
to be easily configured to run before it or after it. This default
value can overridden using the server.filter-order property. The
default order is also exposed as a constant on SecurityProperties,
allowing it to be referenced from other filter declarations.

Closes gh-1640
2014-10-30 14:11:45 +00:00
Phillip Webb d17b7c8195 Polish 2014-10-29 12:08:37 -07:00
Andy Wilkinson 8a1e010d0a Allow multiple templateLoaderPaths to be configured for FreeMarker
Closes gh-1767
2014-10-29 17:42:48 +00:00