You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IntelliJ IDEA中SpringBoot与Vaadin项目共存时Vaadin断连问题求助

解决方案

1. 给Vaadin项目单独配置Session Cookie名称

你仅修改了SpringBoot的Session Cookie名称,但纯Java Vaadin项目(若使用嵌入式服务器如Jetty/Tomcat)也需单独配置,避免Cookie冲突:

  • 若Vaadin用嵌入式Tomcat,在启动类添加自定义配置修改Session Cookie名称:
TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory();
factory.addContextCustomizers(context -> {
    context.setSessionCookieName("VAADIN_SESSIONID");
});
  • 若用Jetty,在服务器配置中设置Session Cookie:
Server server = new Server();
SessionHandler sessionHandler = new SessionHandler();
sessionHandler.setSessionCookie("VAADIN_SESSIONID");
server.setHandler(sessionHandler);

2. 检查并隔离两个项目的运行端口

确保SpringBoot和Vaadin项目使用完全不同的端口,避免底层网络资源抢占:

  • SpringBoot在application.properties中确认server.port(例如8080)
  • 将Vaadin项目的嵌入式服务器端口设为另一个值(例如8081),具体配置根据所用服务器(Jetty/Tomcat)调整

3. 调整IntelliJ IDEA的运行配置

  • 打开两个项目的Run/Debug Configurations,分别为每个项目设置独立的VM options,比如添加-Djava.net.preferIPv4Stack=true避免网络栈冲突
  • 在Run Dashboard中,确保两个项目的运行状态设置为「Allow parallel run」(允许并行运行),不要设置为独占模式

4. 用隔离的浏览器环境访问两个项目

  • 使用不同浏览器(如Chrome打开SpringBoot,Firefox打开Vaadin),或用浏览器的隐私/无痕窗口分别访问,避免浏览器层面的Cookie或缓存共享干扰

5. 禁用Vaadin Dev模式的自动重载冲突

若Vaadin开启了Dev模式的自动重载,可能和SpringBoot的热部署工具(如DevTools)产生冲突:

  • 在Vaadin项目中关闭自动重载,或配置Vaadin的Dev模式监听独立的文件路径,避免扫描到SpringBoot项目的文件变动

内容的提问来源于stack exchange,提问作者Fabio Ebner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 23:43:15