Commit Graph

1400 Commits (ca7201b4b2811a901c54b7bf1b7f8e313598572f)
 

Author SHA1 Message Date
Andy Wilkinson ca7201b4b2 Fix binding of overlapping nested maps
When binding a nested map structure, RelaxedDataBinder pre-populates
the target object with default empty maps. Previously, when these
structures overlapped, each step in pre-population process could
potentially overwrite what had come before it. This led to the output
of the pre-population process being incomplete which would lead to a
binding failure.

This commit updates the pre-population process so that it checks to see
if a property's value has already been set by an earlier step in the
process. If it has been set, the existing value is now reused rather
than being overwritten by a new empty map.

Fixes #328
11 years ago
Dave Syer 8de9890757 Add scope=test to hsqldb (fixes #330) 11 years ago
Andy Wilkinson 4f677bec08 Filter non-jar artifacts when packaging libs in Gradle plugin
Previously, the Gradle plugin would package all of a project's
dependencies in the jar's lib directory, irrespective of each
dependency's type. This led to non-jar artifacts being packaged in
the lib directory where only jar dependencies are expected. See #334
for an example failure.

This commit updates the Gradle plugin such that it only packages
dependencies of type jar, ejb, ejb-client, test-jar, or bundle. This
brings the Gradle plugin into line with the Maven plugin.

Fixes #334.
11 years ago
Phillip Webb af93ae2dac Ignore failing JMS tests for now
Ignore JMS sample which intermittently fails to run on CI.

See gh-323
11 years ago
Phillip Webb 5e7d6e608d Update copyright header 11 years ago
Phillip Webb d4f5cf4496 Filter non 'jar' types from nested libs
Update the `ArtifactsLibraries` used by the maven plugin to filter
based on artifact types. This prevent `.pom` files from accidentally
being packaged in `/libs` and ultimately resulting in 'Unable to find
ZIP central directory records' errors.

Fixes gh-324
11 years ago
Phillip Webb 2d8f66e3c5 Add more JMS sample log output 11 years ago
Phillip Webb dd66f119d3 Revert Automatically detect 'development' profile
Revert commit a97bcfe3cd as adding
profiles automatically may be problematic.

Updates gh-296
11 years ago
Christian Dupuis af75dd0e40 Move remaining properties for consistency 11 years ago
Phillip Webb c09ca17ca2 Update gradle example builds 11 years ago
Phillip Webb d137bcd80d Polish gradle repackage task formatting 11 years ago
Phillip Webb f8ab5a1f67 Merge pull request #302 from jvalkeal/gradle-mainclass
* gradle-mainclass:
  Add mainClass option for Repackage task
11 years ago
Janne Valkealahti 32453b27d3 Add mainClass option for Repackage task
Add `mainClass` property option to the Repackage task. If the property
is defined within a task, it works in the same way as if it defined
within the springBoot{} 'ext' properties section.

Option is valid only for that specific task where it is defined, and
will override option defined in springBoot{} ext properties.

Fixes gh-283
11 years ago
Phillip Webb ed9735361e Apply source cleanup and formatting 11 years ago
Phillip Webb 80f2336f17 Polish 11 years ago
Phillip Webb 65b6cf8bcb Merge pull request #304 from adambro/patch-1
* patch-1:
  Prevent 404s in README.md links
11 years ago
Adam Brodziak f67b165f5a Prevent 404s in README.md links
Fix links to ensure that they don't cause 404 errors when published to
Github Pages.

Fixes gh-304
11 years ago
Phillip Webb 3749b1a3b7 Merge pull request #313 from madorb/master
* pull313:
  Document that applicaiton.yml requires snakeyaml
11 years ago
Ben c251e33bf8 Document that applicaiton.yml requires snakeyaml
Update documentation to reference the need for a yaml library to be on
the classpath.

Fixes gh-313
11 years ago
Phillip Webb 75af7a44d0 Add SpringApplication.setRegisterShutdownHook
Add a setRegisterShutdownHook option to SpringApplication allowing the
shutdown hook to not be registered.

Also update SpringApplicationBuilder to automatically disable shutdown
hooks for child contexts.

Fixes gh-314
11 years ago
Phillip Webb 0b7eda89d4 Don't eagerly initialize FactoryBeans
Fix `EmbeddedServletContainerAutoConfiguration` so that it does not
accidentally eagerly initialize factory beans.

Fixes gh-306
11 years ago
Phillip Webb 8763fab0e7 Extract inner configuration property classes
Extract all inner @ConfigurationProperties classes from @Configuration
classes for consistency.
11 years ago
Phillip Webb 5188ee5266 Extract Mongo auto-configuration from Spring Data
Extract Mongo auto-configuration classes from Spring Data specific
auto-configuration, allowing Mongo to be used without Spring Data
if require.
11 years ago
Oliver Gierke cf4df1befb Improve Mongo auto-configuration
Disable Mongo auto-configuation when @EnableMongoRepositories is used
and adapt the test helper classes accordingly.

Change the property prefix and dependency management version property
from `...mongo` to `...mongodb` for consistency with Spring Data.

Fixes gh-315
11 years ago
Phillip Webb 16df38e928 Ordering of Application Initializer and Listeners
Update javadoc and method names to indicate that ApplicationInitializer
and ApplicationListeners are `Order` sorted before being invoked.

Also remove specific sorting from SpringApplicationBuilder, relying
instead on the Order sorting.

Fixes gh-316
11 years ago
Phillip Webb f6f8c26f69 Consistent use of Ordered constants
Prefer Ordered HIGHEST_PRECEDENCE and LOWEST_PRECEDENCE constants to
Integer MAX_VALUE or MIN_VALUE.
11 years ago
Phillip Webb 37c2c89bcb Restructure packages
Improve package structure and attempt to co-locate related classes.
11 years ago
Phillip Webb 6ddbf3bd92 Restore active profile logic and support `+`
Restore the previous `spring.profiles.active` logic effectively
reverting commit 37069d9. This ensures that active profiles defined in
a higher `PropertySource` replace those lower down.

In addition, add support for a `+` prefix that can be used to indicate
that a profile should be added to the active set.

For example:

	# application-prod.properties
	spring.profiles.active=+proddb,+prodmq

Fixed gh-308, gh-309
11 years ago
Phillip Webb 31c385470e Update ErrorMvcAutoConfiguration for Spring 4
Update ErrorMvcAutoConfiguration thymeleaf condition to use the
`spring4` package.

Fixes gh-310
11 years ago
Phillip Webb 69f7f38403 Document Listener/Initializer changes
Fixes gh-312
11 years ago
Phillip Webb 8ede73066d Polish 11 years ago
Phillip Webb 676cacd308 Use '-1' to disable management port
Update `EndpointWebMvcAutoConfiguration` to use '-1' to indicate that
the management context should be disabled. This brings consistency
between the server settings and the management settings and allows '0'
to be used to pick a random port.

Fixed gh-311
11 years ago
Phillip Webb 9049291d9a Attempt to fix Travis-CI log size error 11 years ago
Phillip Webb 37069d91d8 Fix spring.active.profiles repeated loading
Fix `ConfigFileApplicationListener` to repeatedly load property sources
and activate profiles using any defined `spring.active.profiles`
properties.

This restores the ability to have a property in a profile specific
file that defines additional profiles.

Fixes gh-308
11 years ago
Phillip Webb 0f083c2f9d Fix CLI class tangle 11 years ago
Phillip Webb 1061d582dc Fix CLI package tangles 11 years ago
Phillip Webb 70cb8cfed6 Fix CLI package and class tangles 11 years ago
Phillip Webb 1552759584 Fix package tangle by moving AsciiBytes 11 years ago
Phillip Webb f7d4490b2d Fix package tangle with AutoConfigurationReport
Rename AutoConfigurationReport to ConditionEvaluationReport and
co-locate with conditions.
11 years ago
Phillip Webb 32f3e353b4 Fix class tangle 11 years ago
Phillip Webb 042e512d3d Fix package tangle
Fix package tangle between the `org.springframework.boot` and the
`event` sub-package. A new `SpringApplicationRunParticipant` abstraction
has been introduced, with the `event` package solely responsible for
handling event multi-casting.
11 years ago
Phillip Webb c0a5c763b6 Fix class tangle 11 years ago
Phillip Webb 8ff5ce3528 Polish 11 years ago
Phillip Webb f6a341e79f Don't consider sources as Initializer or Listener
Update SpringApplication so that source objects are no longer considered
as ApplicationListeners or ApplicationContextInitializer.
11 years ago
Christian Dupuis 5e2cfe1cfe Add some javadoc. Fix typos. 11 years ago
Phillip Webb 6431fef91e Polish 11 years ago
Phillip Webb a97bcfe3cd Automatically detect 'development' profile
Detect when an application is running in development (by the presence
of a build file) and automatically add a 'development' profile.

Additional detectors can be developed by implementing the
`ProfileDetector` interface and registering with the `SpringApplication`

Fixes gh-296
11 years ago
Phillip Webb 643295cc3c Separate Application Listener and Initializer
Update SpringApplication so that ApplicationListener and
ApplicationInitializer methods must be called separately. This helps
to prevent unexpected side effects when calling the setters and
also encourages separation of concerns.

The few situations where a class was both an ApplicationInitializer
and ApplicationListener are now handled by registering an inner
listener from the `initialize` method.
11 years ago
Phillip Webb 92f01cf9bc Rename SpringApplication Events
Move SpringApplication events to their own package, create a common
base class and rename classes to match Spring conventions.
11 years ago
Dave Syer 818326d820 Turn down logging in spring-boot tests 11 years ago