[bs-14] Ensure all servlet context initializers are called
Misuse of TreeSet in EmbeddedWebApplicationContext corrected (use List and Comparator instead of TreeSet). [Fixes #48055339]
This commit is contained in:
@@ -33,8 +33,6 @@ import org.springframework.beans.MutablePropertyValues;
|
||||
import org.springframework.beans.factory.config.BeanDefinition;
|
||||
import org.springframework.beans.factory.config.ConstructorArgumentValues;
|
||||
import org.springframework.beans.factory.support.RootBeanDefinition;
|
||||
import org.springframework.bootstrap.context.embedded.EmbeddedWebApplicationContext;
|
||||
import org.springframework.bootstrap.context.embedded.FilterRegistrationBean;
|
||||
import org.springframework.context.ApplicationContextException;
|
||||
import org.springframework.context.support.AbstractApplicationContext;
|
||||
import org.springframework.context.support.PropertySourcesPlaceholderConfigurer;
|
||||
@@ -244,6 +242,22 @@ public class EmbeddedWebApplicationContextTests {
|
||||
ordered.verify(initializer2).onStartup(servletContext);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void unorderedServletContextInitializerBeans() throws Exception {
|
||||
addEmbeddedServletContainerFactoryBean();
|
||||
ServletContextInitializer initializer1 = mock(ServletContextInitializer.class);
|
||||
ServletContextInitializer initializer2 = mock(ServletContextInitializer.class);
|
||||
this.context.registerBeanDefinition("initializerBean2",
|
||||
beanDefinition(initializer2));
|
||||
this.context.registerBeanDefinition("initializerBean1",
|
||||
beanDefinition(initializer1));
|
||||
this.context.refresh();
|
||||
ServletContext servletContext = getEmbeddedServletContainerFactory()
|
||||
.getServletContext();
|
||||
verify(initializer1).onStartup(servletContext);
|
||||
verify(initializer2).onStartup(servletContext);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void servletContextInitializerBeansSkipsServletsAndFilters() throws Exception {
|
||||
addEmbeddedServletContainerFactoryBean();
|
||||
|
||||
Reference in New Issue
Block a user