zoukankan      html  css  js  c++  java
  • @ServerEndpoint:无法主入bean

    解决办法:

    import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    
    @ConditionalOnWebApplication
    @Configuration
    public class WebSocketConfigurator {
    
      @Bean
      public CustomSpringConfigurator customSpringConfigurator() {
        return new CustomSpringConfigurator(); // This is just to get context
      }
    }
    import org.springframework.beans.BeansException;
    import org.springframework.beans.factory.BeanFactory;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.ApplicationContextAware;
    
    import javax.websocket.server.ServerEndpointConfig;
    
    public class CustomSpringConfigurator extends ServerEndpointConfig.Configurator implements ApplicationContextAware {
    
        /**
         * Spring application context.
         */
        private static volatile BeanFactory context;
    
        @Override
        public <T> T getEndpointInstance(Class<T> clazz) throws InstantiationException {
            return context.getBean(clazz);
        }
    
        @Override
        public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
            CustomSpringConfigurator.context = applicationContext;
        }
    }
    @Component
    @ServerEndpoint(value = "/websocket/car/",configurator = CustomSpringConfigurator.class)
    public class WebSocketCar {
    
    
    
    }
  • 相关阅读:
    中途接手一个项目时候,需要注意
    PPT做交互效果
    hyperledger学习资料
    k8s拾遗
    Day0-3. 部署docker镜像私有仓库harbor
    Day0-2. Docker安装部署
    Day0-1. Docker环境准备
    【转载】轻量级HTTP服务器Nginx(Nginx性能优化技巧)
    使用nginx-module-vts监控各虚拟主机的流量
    Linux系统下终端proxy代理配置
  • 原文地址:https://www.cnblogs.com/huiy/p/13378534.html
Copyright © 2011-2022 走看看