Browse Source

Check for null before trying to use ApplicationContext

Fixes gh-145
pull/152/head
Dave Syer 12 years ago
parent
commit
f57c8f52bf
  1. 4
      spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/AutoConfigurationReportLoggingInitializer.java
  2. 7
      spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/AutoConfigurationReportLoggingInitializerTests.java

4
spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/AutoConfigurationReportLoggingInitializer.java

@ -87,6 +87,10 @@ public class AutoConfigurationReportLoggingInitializer implements @@ -87,6 +87,10 @@ public class AutoConfigurationReportLoggingInitializer implements
public void logAutoConfigurationReport(boolean isCrashReport) {
if (this.report == null) {
if (this.applicationContext == null) {
this.logger.info("Nothing to report: ApplicationContext not available");
return;
}
this.report = AutoConfigurationReport.get(this.applicationContext
.getBeanFactory());
}

7
spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/AutoConfigurationReportLoggingInitializerTests.java

@ -162,6 +162,13 @@ public class AutoConfigurationReportLoggingInitializerTests { @@ -162,6 +162,13 @@ public class AutoConfigurationReportLoggingInitializerTests {
assertNotNull(context.getBean(AutoConfigurationReport.class));
}
@Test
public void noErrorIfNotInitialized() throws Exception {
this.initializer.handleError(null, null, new String[0], new RuntimeException(
"Planned"));
assertThat(this.infoLog.get(0), containsString("Nothing to report"));
}
public static class MockLogFactory extends LogFactoryImpl {
@Override
public Log getInstance(String name) throws LogConfigurationException {

Loading…
Cancel
Save