Java教程

SpringBoot 集成 WebSocket 遇到的问题 java.lang.IllegalStateException: Failed to register @ServerEndpoint

本文主要是介绍SpringBoot 集成 WebSocket 遇到的问题 java.lang.IllegalStateException: Failed to register @ServerEndpoint,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

websocket server代码如下:

/**
 * websocket server类
 *
 * @author xzc
 * @data 2021/12/16
 */
@Slf4j
@Component
@ServerEndpoint(value = "/websocket/{type}")
public class WebSocketServer {

    ……
}

错误如下: 

java.lang.IllegalStateException: Failed to register @ServerEndpoint class: class com.test.websocket.WebSocketServer$$EnhancerBySpringCGLIB$$31689f61
 
javax.websocket.DeploymentException: Cannot deploy POJO class [com.xxx.WebSocketServer$$EnhancerBySpringCGLIB$$31689f61] as it is not annotated with @ServerEndpoint

后面那一串是代表类被CGLIB转换为了代理对象,什么情况下会被转换为代理对象?

AOP!

AOP!

AOP!

WebSocketServer这个类被切了,以至于@ServerEndPoint注解无法注入至对应的对象,导致报错;检查自己项目中的AOP切入点,包括springboot配置文件里的,排除掉 WebSocketServer不被切就可以了。

这篇关于SpringBoot 集成 WebSocket 遇到的问题 java.lang.IllegalStateException: Failed to register @ServerEndpoint的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!