diff --git a/scm-webapp/src/main/java/sonia/scm/boot/BootstrapContextFilter.java b/scm-webapp/src/main/java/sonia/scm/boot/BootstrapContextFilter.java index a963e95bb4..a134b44784 100644 --- a/scm-webapp/src/main/java/sonia/scm/boot/BootstrapContextFilter.java +++ b/scm-webapp/src/main/java/sonia/scm/boot/BootstrapContextFilter.java @@ -65,14 +65,14 @@ public class BootstrapContextFilter extends GuiceFilter { public void init(FilterConfig filterConfig) throws ServletException { this.filterConfig = filterConfig; - initGuice(); + initializeContext(); + } + + private void initializeContext() throws ServletException { + super.init(filterConfig); LOG.info("register for restart events"); ScmEventBus.getInstance().register(this); - } - - private void initGuice() throws ServletException { - super.init(filterConfig); listener.contextInitialized(new ServletContextEvent(filterConfig.getServletContext())); } @@ -80,6 +80,7 @@ public class BootstrapContextFilter extends GuiceFilter { @Override public void destroy() { super.destroy(); + listener.contextDestroyed(new ServletContextEvent(filterConfig.getServletContext())); ServletContextCleaner.cleanup(filterConfig.getServletContext()); } @@ -107,7 +108,7 @@ public class BootstrapContextFilter extends GuiceFilter { @Override public void initialize() { try { - BootstrapContextFilter.this.initGuice(); + BootstrapContextFilter.this.initializeContext(); } catch (ServletException e) { throw new IllegalStateException("failed to initialize guice", e); } diff --git a/scm-webapp/src/main/java/sonia/scm/boot/InjectionContextRestartStrategy.java b/scm-webapp/src/main/java/sonia/scm/boot/InjectionContextRestartStrategy.java index 29d59d733b..d0b25ba5a9 100644 --- a/scm-webapp/src/main/java/sonia/scm/boot/InjectionContextRestartStrategy.java +++ b/scm-webapp/src/main/java/sonia/scm/boot/InjectionContextRestartStrategy.java @@ -39,7 +39,7 @@ public class InjectionContextRestartStrategy implements RestartStrategy { LOG.warn("reinitialize injection context"); context.initialize(); - LOG.debug("re register injection context for events"); + LOG.debug("register injection context on new eventbus"); ScmEventBus.getInstance().register(context); } catch ( Exception ex) { LOG.error("failed to restart", ex); diff --git a/scm-webapp/src/test/java/sonia/scm/boot/InjectionContextRestartStrategyTest.java b/scm-webapp/src/test/java/sonia/scm/boot/InjectionContextRestartStrategyTest.java index 985ab978b9..81e7faa6d5 100644 --- a/scm-webapp/src/test/java/sonia/scm/boot/InjectionContextRestartStrategyTest.java +++ b/scm-webapp/src/test/java/sonia/scm/boot/InjectionContextRestartStrategyTest.java @@ -1,7 +1,6 @@ package sonia.scm.boot; import com.github.legman.Subscribe; -import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith;