Commit Graph

6930 Commits (f3aa236e922efc20159167160df907f0e082b0bc)
 

Author SHA1 Message Date
Andy Wilkinson f3aa236e92 Merge branch '1.3.x' 9 years ago
Andy Wilkinson a8f4708ffb Shut down in-memory database when DevTools restarts the context
Previously an in-memory database that wasn’t pooled (an
EmbeddedDatabase) would be shutdown when the context restarted, but
an in-memory database wrapped in a connection pool was not. This meant
that the former would be be wiped clean after each restart, whereas the
latter would not. In addition to being inconsistent, this also
caused problems with schema.sql and data.sql scripts when using
DevTools. If you were using an in-memory database wrapped in a
connection pool, a failure may occur during a restart as the scripts
were not being run against in clean database.

This commit adds an auto-configured bean to DevTools that, when the
context is being closed, will execute “SHUTDOWN” if it identifies that
the DataSource is not an EmbeddedDatabase and is for an in-memory
database.

Closes gh-4699
9 years ago
Stephane Nicoll 187d26ae10 Merge branch '1.3.x' 9 years ago
Stephane Nicoll abf9d66edf Document how to configure access logging
Also, the section on `server.*` configuration was poor so this commit
also improves it.

Closes gh-4989
9 years ago
Andy Wilkinson 3f0686fa7e Merge branch '1.3.x' 9 years ago
Andy Wilkinson fc2e51a773 Preserve ordering when auto-configuring WebSocket MessageConverters
Previously, WebSocketMessagingAutoConfiguration added a single
additional converter. This was a MappingJackson2MessageConverter
configured with the auto-configured ObjectMapper.
AbstractMessageBrokerConfiguration places additional converters before
any of the default converters. This meant that the auto-configuration
had the unwanted side-effect of changing the ordering of the
converters. A MappingJackson2MessageConverter was now first in the
list, whereas, by default, it's last in the list after a
StringMessageConverter and a ByteArrayMessageConverter.

This commit updates WebSocketMessagingAutoConfiguration so that it
switches off the registration of the default converters and registers
a StringMessageConverter, ByteArrayMessageConverter and
MappingJackson2MessageConverter in that order. A test has been
added to verify that the types of these three converters match
the types of the default converters. A second test that verifies
that String responses are converted correctly has also been added
alongside the existing test that verified the behaviour for JSON
responses.

Closes gh-5123
9 years ago
Stephane Nicoll b3069e4d43 Merge branch '1.3.x' 9 years ago
Stephane Nicoll c10943c653 Polish Javadoc
Closes gh-4936
9 years ago
Stephane Nicoll 63d9f9e91f Merge branch '1.3.x' 9 years ago
Stephane Nicoll 594c8910c5 Clarify precedence of property sources
When the `locations` attribute is set for a given bean annotated with
`@ConfigurationProperties`, the configuration at these specified
locations take precedence over any other property sources. This means
that such values can't be overridden by a system property or a command
line switch for instance.

This commit clarifies this rules in the documentation.

Closes gh-5111
9 years ago
Andy Wilkinson a754e63e46 Merge pull request #5162 from Kazuki Shimizu
* gh-5126:
  Auto-configure ResourceUrlEncodingFilter when using FreeMarker
9 years ago
Kazuki Shimizu 4e177eeed7 Auto-configure ResourceUrlEncodingFilter when using FreeMarker
Closes gh-5126
9 years ago
Stephane Nicoll 1f106ddf8c Enable connection validation by default
Hikari and Commons DBCP2 are already validating that the connection is
valid before borrowing it from the pool. This commit makes that behaviour
consistent by enabling that feature for the Tomcat and Commons DBCP data
sources.

Since a validation query is required in those cases, the infrastructure
of `DataSourceHealthIndicator` has been merged in a single place: the
`DatabaseDriver` enum provides not only the driver class names but also
the validation query, if any.

Closes gh-4906
9 years ago
Stephane Nicoll eb7b1ec33c Merge branch '1.3.x' 9 years ago
Stephane Nicoll 2a8a3741f5 Merge DriverClassNameProvider in DatabaseDriver
DriverClassNameProvider is unused but was probably restored by a merge
commit at some point. It wasn't obvious and updated that class rather
than `DatabaseDriver`.

This commit updates `DatabaseDriver` and deletes
`DriverClassNameProvider`.

Closes gh-5076
9 years ago
Andy Wilkinson 4597b61626 Merge branch '1.3.x' 9 years ago
Andy Wilkinson ec8f7d3a0f Upgrade to SLF4J 1.7.15
Closes gh-5044
9 years ago
Andy Wilkinson 9c40d43a72 Merge branch '1.3.x' 9 years ago
Andy Wilkinson aab678f499 Upgrade to Undertow 1.3.17.Final
Closes gh-5108
9 years ago
Stephane Nicoll b82fb5e5a6 Merge branch '1.3.x' 9 years ago
Stephane Nicoll 6710c05750 Document `DeprecatedConfigurationProperty`
Closes gh-5118
9 years ago
Stephane Nicoll ebffa493e4 Harmonize ConfigurationProperties bean name
When `@EnableConfigurationProperties` is defined, Spring Boot
automatically registers a bean in the context for each class specified
on the annotation. Previously, the name of the bean only included the
prefix which leads to conflict if two different classes use the same
prefix.

This commit changes the bean name structure to be <prefix>-<fqn> where
prefix is the prefix used on the annotation and <fqn> the fully qualified
name of the target class.

Closes gh-4395
9 years ago
Phillip Webb 2b18e99ac7 Polish 9 years ago
Andy Wilkinson 77d426c284 Merge branch '1.3.x' 9 years ago
Andy Wilkinson a1fefb15ba Merge pull request #5059 from Vedran Pavić
* gh-5059:
  Remove Docker container after launch script test execution
9 years ago
Vedran Pavic 6540b1f383 Remove Docker container after launch script test execution
Closes gh-5059
9 years ago
Andy Wilkinson f12bb26649 Merge branch '1.3.x' 9 years ago
Andy Wilkinson 29c7b93640 Update SpringApplicationBuilder to pass args to parent when it's run
Closes gh-5103
9 years ago
Stephane Nicoll b896de404e Merge pull request #4188 from eddumelendez/gh-4131
* pr/4188:
  Polish contribution
  Add support of Jackson in Jersey
9 years ago
Stephane Nicoll a27176807f Polish contribution
Closes gh-4188
9 years ago
Eddú Meléndez 5776d6a8d7 Add support of Jackson in Jersey
If Jackson is configured for the project, the `ObjectMapper` is now
reused and added in the Jersey's context.

Closes gh-4131
9 years ago
Phillip Webb 410dedc567 Add AssertJ to Eclipse Oomph Setup 9 years ago
Phillip Webb f15f12d7e4 Merge branch 'gh-5083' 9 years ago
Phillip Webb cc5d4b8b7f Add AssertJ checkstyle rule
Closes gh-5083
9 years ago
Phillip Webb c5add2ef08 Use AssertJ in spring-boot-deployment-tests
See gh-5083
9 years ago
Phillip Webb e214fa0949 Use AssertJ in spring-boot-integration-tests
See gh-5083
9 years ago
Phillip Webb 1cc1fc6431 Use AssertJ in spring-boot-samples
See gh-5083
9 years ago
Phillip Webb 962a598531 Use AssertJ in spring-boot-cli
See gh-5083
9 years ago
Phillip Webb 00cfe1d054 Use AssertJ in spring-boot-tools
See gh-5083
9 years ago
Phillip Webb 7f9358f4d8 Use AssertJ in spring-boot-devtools
See gh-5083
9 years ago
Phillip Webb 94677b35f8 Use AssertJ in spring-boot-actuator
See gh-5083
9 years ago
Phillip Webb a5ae81c1c1 Use AssertJ in spring-boot-autoconfigure
See gh-5083
9 years ago
Phillip Webb e19e3209d9 Use AssertJ in spring-boot
See gh-5083
9 years ago
Phillip Webb 8b4d801dd6 Add support for AssertJ
Add AssertJ as a managed dependency and also include it in
spring-boot-starter-test. Also provide a simple adapter class to allow
Hamcrest matchers to be used as AssertJ Conditions.

Fixes gh-5048
9 years ago
Phillip Webb 516afcd2ca Polish 9 years ago
Phillip Webb ed01ae9ebf Use deterministic DataSource config import order
Update DataSourceAutoConfiguration so that pooled datasource
configurations are only loaded via an @Import. If left as nested
classes, the load order is JVM specific and can result in the wrong
configuration being loaded.

Closes gh-2183
9 years ago
Phillip Webb 3d0355434c Drop unneeded version tag from POM.xml 9 years ago
Andy Wilkinson 9dbef5d9b0 Remove use a separate runner thread from the Launcher
Previously, the Launcher was creating a new runner thread that would
call the application's main method. An exception thrown by this thread
is handled differently to one thrown by the JVM's main thread leading
to different exit behaviour. Furthermore, the separate thread isn't
actually necessary.

This commit removew the use of a separate runner thread from the
Launcher. This means that the JVM's exit behaviour will be consistent
and also removes the overhead of createing a starting an extra thread.

Closes gh-5006
9 years ago
Andy Wilkinson 8f57f4ca63 Merge branch '1.3.x' 9 years ago
Andy Wilkinson c0a2c88da1 Stop referring to optional classes in BeanDefinitionLoader’s signature
Previously, BeanDefinitionLoader declared a field of type
GroovyBeanDefinitionReader which is a GroovyObject subclass. This is
problematic as BeanDefinitionLoader is always loaded but Groovy is an
optional dependency. Even on a JVM where class verification is performed
lazily, this can still cause problems if something reflectively tries
to access the class’s declared fields. On a JVM where classes are
verified at load time, it would be impossible to start a Spring Boot
application without having Groovy on the classpath.

This commit changes the field to be a BeanDefinitionReader, removing
the indirect reference to GroovyObject form BeanDefinitionLoader’s
signature. The reader is downcast to a GroovyBeanDefinitionReader in the
body of a method body that will only be invoked when Groovy is on the
classpath.

Closes gh-5040
9 years ago