DimaA6_ABC
DimaA6_ABC

Reputation: 622

Embedded Tomcat 10 does not listen on port in Spring Boot application

I have a Spring Boot application which uses Tomcat. With version 9.0.36 it runs fine, and with 10.0.0-M7 fails. Part of pom.xml related to Tomcat is:

    </properties>
            <tomcat.version>10.0.0-M7</tomcat.version>
    </properties>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

application.yml's section responsible for Tomcat:

server:
  port: 28088
  servlet:
    contextPath: /rest
  main:
    web-application-type: servlet
  tomcat:
    max-threads: 64

With Tomcat 9.0.36, everything is fine. From the log:

2020-07-20 16:56:10.596  INFO 8268 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data MongoDB repositories in DEFAULT mode.
2020-07-20 16:56:10.637  INFO 8268 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 35ms. Found 0 MongoDB repository interfaces.
2020-07-20 16:56:11.493  INFO 8268 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 28088 (http)
2020-07-20 16:56:11.505  INFO 8268 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2020-07-20 16:56:11.506  INFO 8268 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.36]
2020-07-20 16:56:11.689  INFO 8268 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/rest]   : Initializing Spring embedded WebApplicationContext
2020-07-20 16:56:11.689  INFO 8268 --- [           main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 2278 ms
2020-07-20 16:56:12.229  INFO 8268 --- [           main] org.mongodb.driver.cluster               : Cluster created with settings {hosts=[...:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms'}

But as soon as I replace 9.0.36 with 10.0.0-M7, it does not start Tomcat:

2020-07-20 16:59:24.184  INFO 20036 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data MongoDB repositories in DEFAULT mode.
2020-07-20 16:59:24.242  INFO 20036 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 51ms. Found 0 MongoDB repository interfaces.
2020-07-20 16:59:25.298  INFO 20036 --- [           main] org.mongodb.driver.cluster               : Cluster created with settings {hosts=[...:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms'}

Anybody successfully used embedded Tomcat 10 with Spring Boot? I have upgraded to the latest Spring Boot 2.3.1-RELEASE to no avail.

Upvotes: 1

Views: 5088

Answers (1)

DimaA6_ABC
DimaA6_ABC

Reputation: 622

OK, got an answer from Spring Boot team. In short, Spring Boot is not yet compatible with Tomcat 10.

https://github.com/spring-projects/spring-boot/issues/22414

Upvotes: 2

Related Questions