Mac系统下Tomcat服务器部署Flowable war文件访问404问题求助
问题根因
Tomcat 10.x 基于 Jakarta EE 9 及以上规范实现,将原 Java EE 体系的javax.*全量包名重构为jakarta.*,但当前 Flowable 官方发布的 WAR 包均基于javax.*命名空间开发,组件无法被 Tomcat 10.x 容器正确识别注册。日志仅标记WAR解压完成、部署流程走完,不会抛出显式的包名不匹配报错,因此出现无报错但访问404的情况。
可行解决方案
- 方案1:降级Tomcat版本(最便捷)
直接替换容器为 Tomcat 9.x 版本,Flowable 官方 WAR 包原生兼容 Tomcat 9.x,无需修改任何应用配置,重新部署 WAR 即可正常访问。 - 方案2:迁移WAR包适配Jakarta规范(必须用Tomcat 10.x时选择)
使用 Apache 官方迁移工具对 Flowable WAR 做包名批量替换:- 下载 Apache Jakarta EE 迁移工具
- 执行转换命令:
java -jar jakartaee-migration-*-shaded.jar <原始flowable-war路径> <转换后输出war路径> - 将转换后的 WAR 放入 Tomcat 10.x 的 webapps 目录重新部署
- 方案3:兼容环境下的异常排查
如果已使用 Tomcat 9.x 仍出现404,可依次检查:- 确认访问路径和 WAR 包名匹配:比如 WAR 包名为
flowable-ui-6.8.0.war,对应的访问路径为/flowable-ui-6.8.0,而非/flowable-ui - 检查
conf/server.xml配置中autoDeploy和unpackWARs参数均为true - 查看
logs目录下的localhost.日期.log日志,此类容器组件注册异常通常会输出在该日志文件中,而非默认的catalina.out
- 确认访问路径和 WAR 包名匹配:比如 WAR 包名为
内容的提问来源于stack exchange,提问作者Atropos
相关产品推荐
相关产品推荐

