package com.admin.config; import com.admin.common.utils.WebSocketServer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.socket.WebSocketHandler; import org.springframework.web.socket.config.annotation.EnableWebSocket; import org.springframework.web.socket.config.annotation.WebSocketConfigurer; import org.springframework.web.socket.config.annotation.WebSocketHandlerRegistry; import org.springframework.boot.web.servlet.ServletContextInitializer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.annotation.Resource; @Configuration @EnableWebSocket public class WebSocketConfig implements WebSocketConfigurer { @Resource private WebSocketInterceptor webSocketInterceptor; @Bean public ServletContextInitializer websocketBufferConfig() { return new ServletContextInitializer() { @Override public void onStartup(ServletContext servletContext) throws ServletException { servletContext.setInitParameter("org.apache.tomcat.websocket.textBufferSize", String.valueOf(10 * 1024 * 1024)); servletContext.setInitParameter("org.apache.tomcat.websocket.binaryBufferSize", String.valueOf(10 * 1024 * 1024)); } }; } @Override public void registerWebSocketHandlers(WebSocketHandlerRegistry webSocketHandlerRegistry) { webSocketHandlerRegistry .addHandler(myHandler(), "/system-info") .setAllowedOrigins("*") .addInterceptors(webSocketInterceptor); } @Bean public WebSocketHandler myHandler() { return new WebSocketServer(); } }