private ApplicationContext loadRootApplicationContext(String[] configLocations, MessageSource messageSource) {
final ClassPathXmlApplicationContext applicationContext
= new ClassPathXmlApplicationContext(configLocations, false);
if (splashScreen instanceof MonitoringSplashScreen) {
final ProgressMonitor tracker = ((MonitoringSplashScreen) splashScreen).getProgressMonitor();
applicationContext.addBeanFactoryPostProcessor(
new ProgressMonitoringBeanFactoryPostProcessor(tracker, messageSource));
}