Faster startup time by avoiding class-path scanning
Disables Spring's built-in ServletContainerInitializer which uses WebApplicationInitializer SPI that is discovered via slow class-path scanning. Now directly, and only, call the SpringBootServletInitializer via our own ServletContainerInitializer instead. Be mindful if, in the future, we rely on other WebApplicationInitializers that will now not be run.
This commit is contained in:
parent
4d96fc4671
commit
807d6764af
war/src/main
java/se/su/dsv/scipro/war
resources/META-INF/services
webapp/WEB-INF
@ -2,6 +2,9 @@ package se.su.dsv.scipro.war;
|
||||
|
||||
import jakarta.persistence.EntityManager;
|
||||
import jakarta.persistence.EntityManagerFactory;
|
||||
import jakarta.servlet.ServletContainerInitializer;
|
||||
import jakarta.servlet.ServletContext;
|
||||
import jakarta.servlet.ServletException;
|
||||
import org.apache.wicket.protocol.http.WebApplication;
|
||||
import org.apache.wicket.protocol.http.WicketFilter;
|
||||
import org.apache.wicket.spring.injection.annot.SpringComponentInjector;
|
||||
@ -35,7 +38,12 @@ import java.util.Set;
|
||||
@SpringBootApplication
|
||||
@EntityScan("se.su.dsv.scipro")
|
||||
@Import({CoreConfig.class, ApiConfig.class})
|
||||
public class Main extends SpringBootServletInitializer {
|
||||
public class Main extends SpringBootServletInitializer implements ServletContainerInitializer {
|
||||
@Override
|
||||
public void onStartup(Set<Class<?>> c, ServletContext ctx) throws ServletException {
|
||||
onStartup(ctx);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
|
||||
return builder.sources(Main.class);
|
||||
|
@ -0,0 +1 @@
|
||||
se.su.dsv.scipro.war.Main
|
@ -5,9 +5,8 @@
|
||||
|
||||
<display-name>SciPro</display-name>
|
||||
|
||||
<listener>
|
||||
<listener-class>org.springframework.web.SpringServletContainerInitializer</listener-class>
|
||||
</listener>
|
||||
<!-- disables Spring's built in ServletContainerInitializer which causes a slow class path scanning -->
|
||||
<absolute-ordering/>
|
||||
|
||||
<session-config>
|
||||
<session-timeout>480</session-timeout>
|
||||
|
Loading…
x
Reference in New Issue
Block a user