I upgrade spring boot 1.5.x to 2.2.3 but Jetty srvr could not started. I got error which attached.

Could you help me please?

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.5.RELEASE</version>
        <relativePath/>
</parent>

 <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Hoxton.SR9</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
</dependencyManagement>

error.txt

org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Jetty web server
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:161)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545)
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:143)
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758)
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750)
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:405)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)
    at com.gg.papi.aggregation.usercollection.UserCollectionAggregation.main(UserCollectionAggregation.java:17)
Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Jetty web server
    at org.springframework.boot.web.embedded.jetty.JettyWebServer.initialize(JettyWebServer.java:142)
    at org.springframework.boot.web.embedded.jetty.JettyWebServer.<init>(JettyWebServer.java:92)
    at org.springframework.boot.web.embedded.jetty.JettyServletWebServerFactory.getJettyWebServer(JettyServletWebServerFactory.java:408)
    at org.springframework.boot.web.embedded.jetty.JettyServletWebServerFactory.getWebServer(JettyServletWebServerFactory.java:162)
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:178)
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:158)
    ... 9 common frames omitted
Caused by: java.lang.IllegalStateException: StatisticsHandler has no Wrapped Handler
    at org.eclipse.jetty.server.handler.StatisticsHandler.doStart(StatisticsHandler.java:251)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
    at org.eclipse.jetty.server.Server.start(Server.java:423)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
    at org.eclipse.jetty.server.Server.doStart(Server.java:387)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
    at org.springframework.boot.web.embedded.jetty.JettyWebServer.initialize(JettyWebServer.java:136)
    ... 14 common frames omitted

Comment From: snicoll

@erolyapici thanks for the report but it is very hard to guess what the problem could be on something that looks like Jetty specific. Is this a vanilla Jetty setup or do you have customizations in your project?

Comment From: erolyapici

WebServerFactoryCustomizer is not working my project I refactor webserverFactory after that not working. JettyEmbeddedServletContainerFactory removed spring 2 How can I customize embedenContainer? `public class ServletContainerFactoryConfiguration implements WebServerFactoryCustomizer {

@Autowired
private ServletContainerProperties servletContainerProperties;

@Bean("jettyStatisticsHandler")
public StatisticsHandler statisticsHandler() {
    return new StatisticsHandler();
}

@Override
public void customize(JettyServletWebServerFactory factory) {
    factory.addServerCustomizers(server -> {
        final QueuedThreadPool threadPool = server.getBean(QueuedThreadPool.class);
        threadPool.setMaxThreads(servletContainerProperties.getMaxThreads());
    });

    factory.addServerCustomizers(server -> {
        HandlerCollection handlers = new HandlerCollection();
        for (Handler handler : server.getHandlers()) {
            handlers.addHandler(handler);
        }
        handlers.addHandler(statisticsHandler());
        server.setHandler(handlers);
    });

    factory.addServerCustomizers(server -> {
        for (Connector connector : server.getConnectors()) {
            if (connector instanceof ServerConnector) {
                HttpConnectionFactory connectionFactory = connector
                    .getConnectionFactory(HttpConnectionFactory.class);
                connectionFactory.getHttpConfiguration()
                    .setRequestHeaderSize(16 * 1024);
            }
        }
    });
}

}`

Comment From: erolyapici

I change my code after that work :) Thank you ` @Configuration public class ServletContainerFactoryConfiguration {

@Autowired
private ServletContainerProperties servletContainerProperties;

@Bean
public ConfigurableWebServerFactory embeddedServletContainerFactory(
    @Value("${server.port:8080}") final Integer port,
    @Qualifier("jettyStatisticsHandler") StatisticsHandler statisticsHandler) {
    final JettyServletWebServerFactory factory = new JettyServletWebServerFactory(
        port);
    factory.addServerCustomizers(server -> {
        final QueuedThreadPool threadPool = server.getBean(QueuedThreadPool.class);
        threadPool.setMaxThreads(servletContainerProperties.getMaxThreads());
    });

    factory.addServerCustomizers(server -> {
        HandlerCollection handlers = new HandlerCollection();
        for (Handler handler : server.getHandlers()) {
            handlers.addHandler(handler);
        }
        handlers.addHandler(statisticsHandler);
        server.setHandler(handlers);
    });

    factory.addServerCustomizers(server -> {

        for (Connector connector : server.getConnectors()) {
            if (connector instanceof ServerConnector) {
                HttpConnectionFactory connectionFactory = connector
                    .getConnectionFactory(HttpConnectionFactory.class);
                connectionFactory.getHttpConfiguration()
                    .setRequestHeaderSize(16 * 1024);
            }
        }
    });

    return factory;
}

@Bean("jettyStatisticsHandler")
public StatisticsHandler statisticsHandler() {
    return new StatisticsHandler();
}

}`