From 60407ac71d4e127fc6c702a4ee134d23eb9f4393 Mon Sep 17 00:00:00 2001 From: Mikhail Shabarov <61410877+mshabarov@users.noreply.github.com> Date: Mon, 1 Mar 2021 12:22:09 +0200 Subject: [PATCH] fix: Run LookupServletContainerInitializer logic in Spring Boot case (#726) (cherry picked from commit 3a5b76864ba2835479e183b9590ff0a6b52ed276) Co-authored-by: Denis --- .../flow/spring/VaadinServletContextInitializer.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/vaadin-spring/src/main/java/com/vaadin/flow/spring/VaadinServletContextInitializer.java b/vaadin-spring/src/main/java/com/vaadin/flow/spring/VaadinServletContextInitializer.java index 16486f3f3..bb12cb02e 100644 --- a/vaadin-spring/src/main/java/com/vaadin/flow/spring/VaadinServletContextInitializer.java +++ b/vaadin-spring/src/main/java/com/vaadin/flow/spring/VaadinServletContextInitializer.java @@ -236,7 +236,13 @@ public void failFastContextInitialized(ServletContextEvent event) Set> classes = Stream.concat( findByAnnotationOrSuperType(getLookupPackages(), appContext, Collections.emptyList(), getServiceTypes()), - Stream.of(SpringLookupInitializer.class)) + // LookupInitializer is necessary here: it allows + // identify Spring boot as a regular Web container (and run + // LookupServletContainerInitializer logic) even though + // LookupInitializer will be ignored because there + // is its subclass SpringLookupInitializer provided + Stream.of(LookupInitializer.class, + SpringLookupInitializer.class)) .collect(Collectors.toSet()); process(classes, event.getServletContext()); }