Error creating bean with name 'serverEndpointExporter' defined in class path

一、springboot配置websocket后打war包出错

当前项目是springboot项目,配置了websocket后打war包过程中出现此类错误,出现这个问题的原因是因为

出现这个错的原因是在部署项目的时候,项目中含有websocket的@ServerEndpoint注解的时候,如果项目是springboot项目,
去除内置tomcat的时候会把websocket的包也给删除掉,所以需要手动加上websocket的包,然后再打war包

解决办法

<!--去除内嵌tomcat-->
       <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
  
        <!--websocket依赖包-->
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-websocket</artifactId>
            <version>8.5.23</version>
        </dependency>

如果打包还出错的话,就把 pom里的test依赖删掉,然后把 测试类文件 删除

     <dependency> 
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
	 </dependency> 

 

二、war包放在tomcat下运行出错

打成war包后放在tomcat下运行。tomcat日志文件报错  java.lang.IllegalStateException: Failed to register @ServerEndpoint class

//@Configuration
//public class WebSocketConfig {
//
//    @Bean
//    public ServerEndpointExporter serverEndpointExporter() {
//        return new ServerEndpointExporter();
//    }
//
//}


如果打包无需进行此步配置,否则会产生java.lang.IllegalStateException:无法注册@ServerEndpoint类的错误,把 WebSocketConfig.java 注释后重新打包 

 

转载于:https://my.oschina.net/u/3387320/blog/3063237

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值