最近在項目中須要服務端進行推送服務,因而決定使用webSocket進行雙向通信。剛開始以爲應該沒問題,參考網上的博客進行開發配置。咱們的開發環境使用的是springBoot、tomcat七、servlet2.5。剛開始的參考網上的springBoot的開發方式。參考:https://blog.csdn.net/zhangdehua678/article/details/78913839。springBoot中默認使用的是tomcat8,tomcat7中不支持@ServerEndpoint(value = "/websocket")這種方式。因此放棄,後續又看到spring下websocket的配置開發:https://blog.csdn.net/u014520745/article/details/62046396。開始報錯404,未找到路徑。 web
後續查找資料,websocket須要servlet支持的版本是3.0以上,因此須要修改servlet的版本,後續報錯:spring
No suitable default RequestUpgradeStrategy found
這個是由於版本衝突,springBoot默認使用的是tomcat8,而咱們的服務器是tomcat7,因此pom文件以下修改:tomcat
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency>
讓tomcat使用本身自帶的,項目跑起來了。服務器