今天部署一个小应用,打包成war,放到tomcat下就出问题,找不到站点。
找了一上午问题,最后将站点重构了一遍,一步一步打包才找到错误原因,原来是由于websocket引起的。
tomcat日志文件报错 java.lang.IllegalStateException: Failed to register @ServerEndpoint class
原来:WebSocketConfig文件在war打包到tomcat下的时候是不需要的,需要将这个配置文件下达内容都注释掉。
//@Configuration //public class WebSocketConfig { // // @Bean // public ServerEndpointExporter serverEndpointExporter() { // return new ServerEndpointExporter(); // } // //}
如果不注释掉,则会产生java.lang.IllegalStateException:无法注册@ServerEndpoint类的错误。
把 WebSocketConfig.java 注释后重新打包,完美解决问题。