773 Commits

Author SHA1 Message Date
Phillip Webb
e8085016ba Polish Actuator hypermedia support 2015-07-05 22:28:04 -07:00
Dave Syer
eb49f4bfec Documentation for default profiles 2015-07-03 15:52:37 +01:00
izeye
631a02b8bc Fix typo
Closes gh-3403
2015-07-02 07:02:54 -07:00
Dave Syer
74e9e0749b Add support for Spring HATEOAS hypermedia in Actuator endpoints
If spring-hateoas is on the classpath and an MvcEndpoint returns a
@ResponseBody it will be extended and wrapped into a Resource with links.
All the existing endpoints that return sensible JSON data can be extended
this way (i.e. not /logfile). The HAL browser will also be added as an
endpoint if available on the classpath. Finally, asciidocs for the
Actuator endpoints are available as a separate jar file, which if
included in an app will also generate a new (HTTP) endpoint.

Fixes gh-1390
2015-07-02 13:26:02 +01:00
Phillip Webb
b5c435f8c4 Polish Actuator MVC customization support
See gh-3345
2015-06-30 22:09:38 -07:00
Dave Syer
1e464da248 Refactor the Actuator MVC configuration to allow more customization
There is a new spring.factories entry for
org.springframework.boot.actuate.autoconfigure.EndpointWebMvcConfiguration
which loads extra beans into the MVC config for the Actuator.
If the management context is a child context all the beans go in the
child (except the Spring Security filter still). A big bonus is that
you can add WebConfigurerAdapters to configure static resources etc.
A new component called ManagementContextResolver can be used to
locate the ApplicationContext for the MVC endpoints.

Fixes gh-3345
2015-06-30 09:42:58 +01:00
Matt Benson
ae4559eb4f Create spring-boot-antlib module
Create a new spring-boot-antlib module which allows Apache Ant users
to easily create executable jars.

Fixes gh-3339
2015-06-30 00:30:28 -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
Phillip Webb
d213cc05d5 Polish 2015-06-29 16:48:59 -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
Dave Syer
46fbca66a6 Fix typo 'a' -> 'an' 2015-06-29 06:43:25 +01:00
Dave Syer
c39b9f7635 Tweak docs on /health endpoint to reflect secure/sensitive
Fixes gh-2816
2015-06-28 22:13:17 +01:00
izeye
4bc7919e04 Polish doc
Closes gh-3344
2015-06-28 06:33:52 -07: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
Phillip Webb
4f072f4046 Update logging documentation
Update logging documentation to show the new `-spring` convention and
the Logback extensions.

See gh-1788
See gh-2558
See gh-3338
2015-06-26 15:59:08 -07:00
Phillip Webb
7879743b9f Polish 2015-06-25 12:00:48 -07:00
Stephane Nicoll
0ec9de9137 Add support for value provider
Improve the "hints" section of the metadata so that each hint can provide
the reference to a value provider.

A value provider defines how a tool can discover the potential values of
a property based on the context. The provider is identifed by a name and
may have an arbitrary number of parameters.

Closes gh-3303
2015-06-25 14:58:10 +02:00
Phillip Webb
855e5a8e5f Minor doc polish 2015-06-24 20:42:16 -07:00
Ralph Schaer
f5830bf46e Fix type in deployment documentation
Replace use of `link -s` with `ln -s`.

Fixes gh-3320
2015-06-24 20:39:43 -07:00
Matt Benson
f2dfb040ab Update documentation to remove 'shaded jar' term
Update documentation section that discusses uber jars since it conflates
the concepts of the uber jar and the shading of dependencies into jars
(which may or may not be true uber jars).

Fixes gh-3321
2015-06-24 20:37:27 -07:00
Phillip Webb
778e3eb091 Polish 2015-06-24 16:15:12 -07:00
Stephane Nicoll
bc9321734f Add support for property hint
Create a new section in the meta-data called "hints" where users can
provide hints about a given property. The most basic use case for now
is to provide a list of values that a property can have. Each value may
have a description.

This sample JSON provides a basic example for a property called `foo.mode`
that exposes 3 values: "auto", "basic" and "advanced".

```
 "hints": [
    {
      "id": "foo.mode",
      "values": [
        {
          "value": "auto",
          "description": "Some smart description."
        },
        {
          "name": "basic"
        },
        {
          "name": "advanced"
        }
      ]
    }
]
```

This information can be read by tools (such as IDE) and offer an
auto-completion with the list of values.

Closes gh-2054
2015-06-24 18:53:11 +02:00
Stephane Nicoll
af1afeaf48 Merge branch '1.2.x' 2015-06-24 17:20:49 +02:00
Stephane Nicoll
982b81c675 Fix datasource metrics doc
The maximum and minimum number of connections are no metrics so these
are not exposed. Fix the doc that stated the contrary.

Fixes gh-3319
2015-06-24 17:20:31 +02:00
Stephane Nicoll
117d6b0da3 Fix typo 2015-06-24 11:12:42 +02: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
Geoffrey Chandler
d6200389eb Add support for ANSI colored resource banners
Add AnsiPropertySource which allows named ANSI codes to be resolved
and update ResourceBanner to include it.

This commit also deprecates constants defined in AnsiElement and
replaces them with AnsiStyle, AnsiColor and AnsiBackground enums.

Closes gh-2704
2015-06-23 14:31:49 -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
Andrew Landsverk
487ab1a60a Prevent restart when META-INF/maven/** changes
These files are modified by Eclipse for some reason when you change files
like Thymeleaf HTML files. `META-INF/maven/**` has been added to the
default exclusion.

Closes gh-3295
Closes gh-3297
2015-06-23 14:05:25 +02:00
Dave Syer
92a6e3188b Correct Spring Data REST docs 2015-06-23 09:41:28 +01: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
Stephane Nicoll
347cbb1ca4 Merge branch '1.2.x' 2015-06-22 10:44:37 +02:00
Stephane Nicoll
5f2ffdb9e2 Update SnakeYAML link
Closes gh-3302
2015-06-22 10:44:23 +02:00
Phillip Webb
f65dfe4bcb Fix javadoc errors and warnings 2015-06-19 14:04:55 -07:00
Phillip Webb
c417e90215 Update executable jar documentation
See gh-3243
2015-06-18 23:11:12 -07: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
Stephane Nicoll
b2960a7221 Fix typo 2015-06-18 16:55:59 +02:00
Stephane Nicoll
df4e08834b Fix inconsistency in doc
See gh-3280
2015-06-18 16:55:28 +02:00
Andy Wilkinson
fd6d61e8b4 Add auto-configuration support for Spring Session
This commit adds support for automatically configuring Spring Session.
In a web application when both Spring Session and Spring Data Redis
are on the classpath, Spring Session's Redis Http Session support
will be auto-configured. The max inactive interval for Redis-backed
sessions can be configured via the environment using the existing
server.session-timeout property.

Closes gh-2318
2015-06-18 14:52:59 +01: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
b5d49b3099 Expose additional admin features
Improve SpringApplicationAdminMXBean to expose additional information:

* Whether the application uses an embedded container
* The properties exposed by the `Environment`

This allows to know if the application is web-based and the HTTP port
on which it is running.

Closes gh-3067
2015-06-17 11:52:18 +02:00
Stephane Nicoll
c177a774a5 Provide seamless support for local.server.port
Previously, the actual HTTP port on which a web application is running on
was only exposed in tests. This commit makes sure to provide that feature
regardless of the environment so that applications can know on which port
they are actually running on.

If there are several containers, each is exposed via the namespace of
their respective application context.

Closes gh-3259
2015-06-17 11:47:05 +02:00