错误类型1:ServerEndpointExporter报错
这个错是因为在IDEA使用自带的tomcat来跑项目需要注入这个,但是外置tomcat中不需要注入,就直接讲这个config直接注释掉即可。
错误类型2:tomcat版本的问题
之前布置项目的时候使用的都是tomcat8.5这个版本,一直没有成功,查资料发现tomcat主页自带了一个example测试,里面有一个websocket测试,我用这个测试,就一直报错500这个错。所以我感觉可能是tomcat版本的毛病,于是我试了tomcat7.0版本的example里面的websocket测试,成功连接!!!我也不知道为啥,但是先解决问题比较重要。
错误类型3:访问url的问题(不确定)
这个是在ws访问的时候,好像localhost不能用,得使用具体的ip地址,我就改成了我服务器的地址,我没有进一步测试,但是可以尝试一下。
错误类型4:jar包冲突的问题
jar包冲突的问题在于tomcat好像自带了websocket需要用到的两个jar包,一个websocket-api.jar,另一个是tomcat7-websocket.jar,idea生成的项目里面好像也有这两个。不过我在pom里面把这两个依赖都给注释了再布置还是有问题,我就留着了。这两个依赖是
然后是关键,在tomcat的配置conf文件夹下,找到context.xml文件,在<Context>里面加入下面这句话。
参考来源https://blog.youkuaiyun.com/mmake1994/article/details/88366945
<Loader delegate="true"></Loader>
PS 额外的错误:web版本的问题
将war包从8.5版本移动到7.0版本的时候,启动项目报了错,类似Catalina default啥的错误信息,这是因为Springboot的web依赖版本的问题,需要将版本改成1.5.6版本,