Commit Graph

133 Commits

Author SHA1 Message Date
Phillip Webb f4f668a52b Polish 2013-11-25 17:12:56 -08:00
Dave Syer a9e4400f82 Add test for PropertyPlaceholderAutoConfiguration 2013-11-25 16:07:07 +00:00
Dave Syer 8efa2fc569 Use server.port=0 for scanning
This leverages existing capabilities of teh JDK and the OS
to grab a port at random and not have it stolen by another
process. It's very hard to avoid that race condition in
pure Java code, so why bother?

User can set port<0 to disable autoStart of connectors (e.g.
to start a web application context but not have it listen on
any port). In that case the actual socket port will be set to
0 (and therefore if it ever starts up the local port will
be random).
2013-11-23 11:26:58 +00:00
Dave Syer 59f07d37ab Scan for port near default 2013-11-22 19:59:19 +00:00
Dave Syer 61dd7d1dbb Add port scan to ServerProperties (server.scan=true)
Also moved ServerProperties to autoconfigure project.
2013-11-22 16:56:43 +00:00
Dave Syer bd26b28aa5 Extract actuator security into separate classes
So spring-security + a web app is secure by default
(you don't need the actuator).
2013-11-21 16:47:29 +00:00
Dave Syer 285dd5b270 ApplicationContextInitializers now listen for ContextRefreshedEvent
The AutoConfigurationReportLoggingInitializer wasn't working in
non-GenericApplicationContext becasue teh BeanFatcory wasn't available
for registering its listener during initialization. Instead of
relying on that rather fragile state I decided to give any
ApplicationContextInitializer that was itself an ApplicationListener
an explicit callback with a ContextRefreshedEvent, and move that
interface up a level in the logging initializer. Works much better.
2013-11-21 09:35:00 +00:00
Dave Syer 06c16ae452 Only check for singleton in AutoConfigurationReportLoggingInitializer
Using containsBean() involves looking in the parent bean factory
if there is one, and that would mean that the same report woykd be used
for multiple contexts, which wouldn't make sense.
2013-11-20 11:42:32 +00:00
Dave Syer faf02a21ab Prevent @Bean method from being called during @PreDestroy 2013-11-20 11:19:54 +00:00
Dave Syer fce48c00c7 Really fix it 2013-11-20 09:10:25 +00:00
Dave Syer 71cd1926b9 Fix test on command line 2013-11-20 08:58:45 +00:00
Dave Syer 156ef3f1a0 Weird build problem? 2013-11-19 09:16:37 +00:00
Dave Syer ded9020916 Allow Batch datbase initializer to be disabled 2013-11-19 09:03:43 +00:00
Dave Syer 60f3dd9386 Be defensive about adding autoconfig report bean 2013-11-19 09:03:43 +00:00
Dave Syer 640b9d2680 Add RedisAutoConfiguration 2013-11-18 10:54:33 +00:00
Dave Syer 2f7214002d Update Spring to catch SPR-11069 2013-11-17 07:59:16 +00:00
Phillip Webb 64f32893bb Source format and clean-up 2013-11-16 00:08:18 -08:00
Phillip Webb 883fd9162f Polish 2013-11-16 00:08:17 -08:00
Dave Syer 11149443e3 Make sure Batch autoconfig only gets inlcuded once 2013-11-14 14:55:03 +00:00
Phillip Webb dafeddca09 Rework auto-configure report
Update the auto-configuration report to improve log formatting and to
separate the internal report data-structure from the JSON friendly
endpoint data-structure.
2013-11-06 21:40:05 -08:00
Phillip Webb 04fd7fdbbe Improve message used on match
Update OnBeanCondition and OnClassCondition to improve the message used
on a successful match.
2013-11-06 21:31:58 -08:00
Phillip Webb ab249b034d Rename Outcome -> ConditionOutcome 2013-11-06 15:40:09 -08:00
Phillip Webb a9a6077fdb Polish SpringApplicationErrorHandler 2013-11-06 15:40:09 -08:00
Phillip Webb 68e07eba5c Minor formatting polish 2013-11-06 15:40:09 -08:00
Dave Syer 51f240c1d5 Jpa auto configuration updates for new Spring Data release
User now gets @EnableSpringDataWebSupport for free in any
autoconfigured JPA webapp.

[Fixes #53028329] [bs-216]
2013-11-06 13:02:27 +00:00
Phillip Webb 4c75700164 Detect Tomcat start failures
Detect if the tomcat container fails to start and propagate an
exception to the caller.
2013-11-05 17:00:14 -08:00
Dave Syer fa998287ab Only log report if INFO enabled 2013-11-05 11:28:01 +00:00
Dave Syer 5ab2b472a8 Be more lax with --debug parsing 2013-11-05 10:21:54 +00:00
Dave Syer c6efac87f5 Shorten field names a bit 2013-11-05 09:02:43 +00:00
Phillip Webb d784cb6a88 Apply eclipse-formatter conventions 2013-11-04 10:25:27 -08:00
Dave Syer 0def447750 More care required getting beans early in lifecycle 2013-11-04 18:16:30 +00:00
Dave Syer 0c79c8913f Ensure AutoConfigurationReport is always present 2013-11-04 17:07:04 +00:00
Greg Turnquist b63016d8fc Create a report based on Boot's autoconfiguration decisions
- Gather autoconfiguration conditional decisiions (true and false)
- Provide an actuator endpoint as one means to read the report
- Define @EnableAutConfigurationReport annotation to turn this feature on
- Tidy up autoconfig report a bit and log it if --debug=true
2013-11-04 17:07:04 +00:00
Christian Dupuis 368f279788 Fix failing database test on 1.7 2013-11-04 17:32:28 +01:00
Christian Dupuis 90a2bf38da Ignore DataSourceAutoConfigurationTests.testExplicitDriverClassClearsUserName() as it fails without running mysql instance 2013-11-04 17:22:02 +01:00
Dave Syer 09de86fde8 Fix test broken by MySQL dependency 2013-11-04 16:16:06 +00:00
Dave Syer 97e6d77711 Do not default username/password for DataSource unless embedded
To use a DataSource pool (Tomcat or DBCP) the user must supply a valid
driver class name *and* database URL. If both are supplied and the
driver class is not one of the embedded ones, then no default username
or password is provided.

Fixes gh-94
2013-11-04 13:35:59 +00:00
Dave Syer 894940d7aa Add test for dispatcher registration 2013-11-04 13:35:59 +00:00
Dave Syer 9f48376cbc Remove unused argument (causes autowiring issues) 2013-10-31 14:52:14 +00:00
Phillip Webb a9c9c383f4 Polish pom.xml
Aplly consistent formatting, drop JDK 8 support and cleanup repo
locations to use spring.io.
2013-10-28 07:37:02 -07:00
Dave Syer a4c0733d4a Revert aspectj to default version 2013-10-25 09:54:41 -04:00
Dave Syer 18ee229748 Add support for annotation scan in @ConditionalOn*Bean 2013-10-24 12:39:33 -04:00
Dave Syer 86a369b955 Add renamed Rabbit config to factories 2013-10-24 12:39:33 -04:00
Dave Syer 276f9b784c Add virtual host to Rabbit config 2013-10-24 12:39:33 -04:00
Dave Syer 0498617411 Disable whitelabel view if Thymeleaf error.html detected 2013-10-23 10:48:14 -04:00
Dave Syer e789840b3c Adjust db type if postgres 2013-10-23 08:36:31 -04:00
Andy Wilkinson e5e511fd43 Reinstate use of hasMappingForPattern
Use of hasMappingForPattern was commented out during work on the
Aether-based Grape implementation as it was temporarily removed in 
Spring 4's snapshots. It's since been reinstated in the snapshots, so
its use should have been reinstated prior to merging Aether work into
master.
2013-10-22 17:20:37 +01:00
Andy Wilkinson 39e8e46e2a Provide an Aether-based Grape Engine
Previously, @Grab annotations would use Ivy to download the
dependencies with some of Ivy's known limitations being worked around
by GrapeEngineCustomizer.

This commit adds a GrapeEngine implementation that uses Aether,
the dependency resolution 'engine' used by Maven and Grails. To ensure
consistent behaviour with a Maven build, the Aether-powered dependency
resolution uses the dependency management configuration from the
spring-boot-starter-parent pom file.
2013-10-22 16:06:53 +01:00
Andy Wilkinson a28947f276 Move database files into target directory 2013-10-22 15:58:56 +01:00
Dave Syer 43f8a71af4 Ensure JdbcTemplate and DB initializer still work when user supplies DataSource 2013-10-16 13:43:59 -04:00