SpringBoot使用SSE流,打tar包发版后出现问题
以下纯个人实践,如有问题,还望指正~
出现的问题
出现原因:本地调试SSE推送数据没有问题,但是通过打包为tar包发版之后,出现了以下报错:
主要问题就是:
java.lang.IllegalArgumentException: Async support must be enabled on a servlet and for all filters involved in async request processing. This is done in Java code using the Servlet API or by adding "<async-supported>true</async-supported>" to servlet and filter declarations in web.xml.
贴张图:
其实这个问题已经说的很明白了,去web.xml文件加上即可,但问题在于这是SpringBoot项目,配置web.xml有点离谱了,于是网络搜索解决方案加上SpringBoot就会获得这些结果:
方案1:给启动类加上注解
本人项目实测没用,但有人成功过,列在这里
方案2:加过滤器
这个里面就能看出来,还是在尝试启用asyncSupported,但我这边实测还是不行
那么提供最终的解决办法,个人亲测可用,不排除个例问题 ,仅供参考
实现方案:
/**
* 异步请求支持过滤器配置类
* 用于启用 Servlet 异步处理功能
* @author houjinbao
*/
记得启动类加上@EnableAsync
其他方案:
方案4(不保真):
有外国老哥测试,可在TomCat文件里面去修改,配置TomCat的web.xml文件,也可实现
原文:
本文来自博客园,作者:Hlmove,转载请注明原文链接:https://www.cnblogs.com/Hlmove/p/18689482
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· spring官宣接入deepseek,真的太香了~