dromara / dynamic-tp

🔥🔥🔥轻量级动态线程池,内置监控告警功能,集成三方中间件线程池管理,基于主流配置中心(已支持Nacos、Apollo,Zookeeper、Consul、Etcd,可通过SPI自定义实现)。Lightweight dynamic threadpool, with monitoring and alarming functions, base on popular config centers (already support Nacos、Apollo、Zookeeper、Consul, can be customized through SPI).
https://dynamictp.cn
Apache License 2.0
3.73k stars 753 forks source link

webserver adapter not supported for springboot 1.x tomcat #465

Open wengyingjian opened 1 month ago

wengyingjian commented 1 month ago

首先感谢您使用 DynamicTp,如果使用过程中有任何问题,请按照下述模板反馈问题,请使用 Markdown 语法

版本信息

问题描述

文字描述、截图、粘代码方式

tomcat web server adapter not started for springboot version under 2.x

复现步骤

  1. xxx
  2. xxx

其他信息

问题原因

tomcat adpter加载过程:

org.dromara.dynamictp.starter.adapter.webserver.autocconfigure.WebServerTpAutoConfiguration
-> org.dromara.dynamictp.starter.adapter.webserver.autocconfigure.condition.ConditionalOnTomcatWebServer
-> org.dromara.dynamictp.starter.adapter.webserver.autocconfigure.condition.OnTomcatWebServerCondition
-> 
    @ConditionalOnBean(
        name = {"tomcatServletWebServerFactory"}
    )

问题原因: tomcatServletWebServerFactory这个类在springboot2.0之后才引入 springboot1.0之前使用的是TomcatEmbeddedServletContainerFactory

解决方案: 注解上添加sprinboot1.x的tomcat支持

yanhom1314 commented 4 weeks ago

可以提个pr